{
  "data": {
    "a": {
      "slug": "autocua",
      "name": "AutoCua",
      "vendor": "Ashish Yadav and contributors (ComputerUseAgent on GitHub)",
      "vendorUrl": "https://github.com/ComputerUseAgent/AutoCua",
      "kind": "framework",
      "category": "desktop-automation",
      "summary": "AutoCua is an open-source Python agent that operates a computer the way a person does, desktop apps, a terminal, your own Chrome and iOS or Android phones, with any of 60 models from ten providers.",
      "url": "https://www.anchorterminal.com/tools/autocua",
      "markdownUrl": "https://www.anchorterminal.com/tools/autocua.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/autocua.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/autocua.json",
      "dns": "autocua.grade.anchorterminal.com",
      "repo": "https://github.com/ComputerUseAgent/AutoCua",
      "license": "MIT",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "AutoCua"
        }
      ],
      "auth": "none",
      "authNotes": "No account. You bring an API key for the model provider you choose, kept with chats, Chrome profiles and a credential vault in a local AutoCua_data folder.",
      "pricing": "free",
      "pricingNotes": "Free and MIT-licensed. You pay your model provider for tokens. Nothing to buy from the project (checked 2026-11-06).",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "evidence": "A local package with nothing to buy and no payment protocol (checked 2026-11-06).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://github.com/ComputerUseAgent/AutoCua#readme",
      "capabilities": [
        "browser.control",
        "agent.run"
      ],
      "tags": [
        "open-source",
        "mit",
        "python",
        "computer-use",
        "local",
        "new"
      ],
      "lastRelease": "2026-11-04",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 44.3,
        "grade": "E",
        "agentReady": false,
        "rank": 1100,
        "ranked": true,
        "rankOf": 1354,
        "categoryRank": 8,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 55,
          "maintenance": 65,
          "payments": 60,
          "reliability": 25,
          "schema": 42,
          "security": 38,
          "transparency": 42
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "A capable, fast-moving open-source agent for driving desktops, browsers and phones through real input and accessibility trees, with a careful safety section. It's two weeks old, with no test CI or changelog, and on Windows the model itself decides whether to accept an admin elevation prompt.",
        "bestFor": "Developers who want a local agent to operate desktop apps, their own browser or phones across platforms, on a machine they control.",
        "strengths": [
          "One run_agent call drives the desktop, a terminal, your Chrome, or an iOS or Android device",
          "Element picking from accessibility trees and OCR instead of pixel coordinates",
          "Credentials typed from a vault so the model never sees them, in the browser and phone agents",
          "No telemetry, and nothing downloaded without a yes on the terminal",
          "MIT licence, a pip wheel per OS and architecture, and 60 models across ten providers"
        ],
        "weaknesses": [
          "Two weeks old at version 0.1.9, with no changelog file",
          "No CI running the tests; the only workflow labels issues",
          "On Windows the model answers UAC elevation prompts itself through a kernel input driver",
          "Keeps API keys and logged-in Chrome profiles in a local folder next to the checkout",
          "No API reference beyond the README"
        ],
        "agentNotes": [
          "pip install AutoCua, then call run_agent with a mode such as \"web use\" or \"computer use\", a provider, a model and a task",
          "Run it on a machine or account you can afford to lose; it drives real input and keeps logged-in browser profiles",
          "On Windows, don't install the Interception driver unless you accept the model deciding UAC prompts",
          "Set AutoCua_DATA_DIR to keep keys and profiles somewhere private",
          "Phones go over USB from a script; Wi-Fi only through the desktop app"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "E",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 44.3
          }
        ],
        "editorialScores": {
          "ergonomics": 55,
          "maintenance": 65,
          "payments": 60,
          "reliability": 25,
          "schema": 42,
          "security": 38,
          "transparency": 70
        },
        "provenanceScore": 13,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install AutoCua\n# then, in Python:\n# from AutoCua.agent_launcher import run_agent\n# run_agent(mode=\"web use\", provider=\"openrouter\", model=\"gemini-3.8-flash\", task=\"Open wikipedia.org and summarise today's featured article.\")"
      },
      "letme": {
        "capability": "https://letme.dev/browser.control",
        "tool": "https://letme.dev/autocua"
      },
      "area": "developer",
      "provenance": {
        "legalEntity": "",
        "domain": "github.com",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "The licence names Ashish Yadav as copyright holder; most commits are from the GitHub user FunctionFreak. No company, site or terms were found.",
          "github.com/AutoCua/AutoCua and github.com/ComputerUseAgent/AutoCua serve the same main branch, so one is a rename or mirror of the other."
        ],
        "score": 13
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/autocua.json"
    },
    "answer": "Selenium scores 70.8 (BB) on agent readiness against AutoCua's 44.3 (E), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "selenium",
      "name": "Selenium",
      "vendor": "Selenium project (Software Freedom Conservancy)",
      "vendorUrl": "https://www.selenium.dev",
      "kind": "sdk",
      "category": "browser",
      "summary": "Selenium is the open-source browser automation project behind the W3C WebDriver standard, with official bindings for Java, Python, C#, Ruby and JavaScript and a self-hosted Grid server that runs browsers on other machines.",
      "url": "https://www.anchorterminal.com/tools/selenium",
      "markdownUrl": "https://www.anchorterminal.com/tools/selenium.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/selenium.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/selenium.json",
      "dns": "selenium.grade.anchorterminal.com",
      "repo": "https://github.com/SeleniumHQ/selenium",
      "license": "Apache-2.0",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "selenium"
        },
        {
          "registry": "npm",
          "name": "selenium-webdriver"
        },
        {
          "registry": "maven",
          "name": "org.seleniumhq.selenium:selenium-java"
        },
        {
          "registry": "nuget",
          "name": "Selenium.WebDriver"
        },
        {
          "registry": "rubygems",
          "name": "selenium-webdriver"
        }
      ],
      "auth": "none",
      "authNotes": "No account or key for the bindings, which run on the owner's machine. Grid accepts sessions without authentication unless both `--username` and `--password` are set, and Nodes register with a shared `--registration-secret` when one is configured. Site logins live in the browser profile or cookies the script sets.",
      "pricing": "free",
      "pricingNotes": "Free and open source under Apache-2.0, with nothing to buy and no hosted service from the project. Grid is self-hosted. Commercial clouds that run Selenium sessions are separate companies (checked 2026-10-14).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, llms.txt or the source (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 34542,
        "npmWeekly": 1807038,
        "pypiWeekly": 6884385,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://www.selenium.dev/documentation/",
      "llmsTxt": "https://www.selenium.dev/llms.txt",
      "capabilities": [
        "browser.control",
        "browser.debug"
      ],
      "tags": [
        "official",
        "local",
        "open-source",
        "browser",
        "sdk",
        "python",
        "java",
        "javascript",
        "dotnet",
        "ruby",
        "llms-txt",
        "no-auth",
        "webdriver"
      ],
      "lastRelease": "2026-10-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 70.8,
        "grade": "BB",
        "agentReady": true,
        "rank": 168,
        "ranked": true,
        "rankOf": 1354,
        "categoryRank": 5,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 70,
          "maintenance": 94,
          "payments": 60,
          "reliability": 90,
          "schema": 89,
          "security": 43,
          "transparency": 77
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": -3,
        "negativeNotes": [
          "29 October 2026, -3. Selenium 4.52.0, a minor release, changed the Ruby binding to raise an error on a Grid whose HTTPS certificate does not verify. 4.51.0 and earlier connected with verification off. The deprecation (#18153, 10 October) and the change (#18223, 26 October) both shipped first in 4.52.0, so no released version warned, and the changelog does not mark it breaking. The same release raised selenium-webdriver's Node.js floor from 22.0 to 22.23.4, also unannounced before release, read as part of the same term. The error names the remedy (`ignore_certificates: true` on a ClientConfig) and the change closes an unverified connection, so the floor. https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES"
        ],
        "verdict": "Selenium is stable, Apache-2.0 software on 4.52.0 with bindings in five languages, six releases since August, an llms.txt and an agent guide. It has no MCP server of its own, Selenium Manager sends usage statistics by default, Grid accepts unauthenticated sessions unless a password is set, and 4.52.0 changed Ruby's Grid certificate handling without a released warning.",
        "bestFor": "Agents that write test or automation scripts in any of five languages, and teams with a Grid.",
        "strengths": [
          "Official bindings for Java, Python, C#, Ruby and JavaScript, released together, 4.52.0 on 29 October 2026",
          "Six releases between 10 August and 29 October 2026",
          "llms.txt and a page on using AI coding agents with Selenium, last changed 28 September 2026",
          "Code samples in the docs are run in CI against current releases",
          "An error page per common exception, such as `StaleElementReferenceException`, gives causes and fixes"
        ],
        "weaknesses": [
          "No MCP server from the project. The docs point to community servers and say they are third-party",
          "Selenium Manager sends anonymised usage statistics to Plausible once a day by default, until `SE_AVOID_STATS=true` is set",
          "Grid has no authentication unless `--username` and `--password` are both set",
          "The project says it does not follow semantic versioning, and 4.52.0 changed Ruby's Grid certificate handling with no warning in an earlier release",
          "No accessibility snapshot call, so agents read page source or query elements one by one"
        ],
        "agentNotes": [
          "Install with `pip install selenium` (Python 3.10 or later) and let Selenium Manager fetch drivers. Do not set driver paths",
          "Use `WebDriverWait` with expected conditions, never fixed sleeps, and do not mix implicit and explicit waits",
          "Set `SE_AVOID_STATS=true` to stop Selenium Manager sending usage statistics",
          "Point coding agents at https://www.selenium.dev/llms.txt. Most Selenium 2 and 3 era examples use removed APIs",
          "Set `--username` and `--password` before exposing a Grid beyond localhost. Check `http://localhost:4444/status` before creating sessions",
          "On Ruby 4.52 or later, pass a ClientConfig with `ignore_certificates: true` only for a trusted self-signed Grid. Otherwise trust its issuer"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3.8,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 70.8
          }
        ],
        "editorialScores": {
          "ergonomics": 70,
          "maintenance": 94,
          "payments": 60,
          "reliability": 90,
          "schema": 89,
          "security": 43,
          "transparency": 80
        },
        "provenanceScore": 73,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install selenium",
        "http": "curl http://localhost:4444/status"
      },
      "letme": {
        "capability": "https://letme.dev/browser.control",
        "tool": "https://letme.dev/selenium"
      },
      "area": "developer",
      "provenance": {
        "legalEntity": "Software Freedom Conservancy",
        "domain": "selenium.dev",
        "domainRegistered": "2019-02-22",
        "domainNote": "NOTICE reads Copyright 2011-2026 Software Freedom Conservancy, which holds the project. RDAP gives selenium.dev a registration date of 22 February 2019. selenium.dev answers 404 for /.well-known/security.txt. Security reports go to security@seleniumhq.org.",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "No terms or privacy document governs this software beyond the Apache-2.0 licence, so `terms` and `privacy` are left out. selenium.dev has no privacy page (/privacy/ answers 404). Selenium Manager's data collection is described in its documentation page.",
          "Each binding keeps its own changelog. The Python one is linked, and the downloads page links the others.",
          "selenium.dev's robots.txt names all user agents with no Disallow lines, so every page was read."
        ],
        "score": 73
      },
      "requirements": {
        "agentAlone": true,
        "card": "no",
        "freeTier": true,
        "credential": "none",
        "hosting": [
          "self-hosted"
        ],
        "euResidency": "unknown",
        "trainsOnData": "no",
        "zeroRetention": "unknown",
        "selfHost": "yes"
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/selenium.json",
      "live": {
        "slug": "selenium",
        "versions": [
          {
            "registry": "github",
            "name": "SeleniumHQ/selenium",
            "version": "selenium-4.52.0",
            "released": "2026-10-29",
            "seenAt": "2026-11-05T22:07:11.204545841Z"
          },
          {
            "registry": "npm",
            "name": "selenium-webdriver",
            "version": "4.52.0",
            "seenAt": "2026-11-05T22:07:10.935135842Z"
          },
          {
            "registry": "pypi",
            "name": "selenium",
            "version": "4.52.0",
            "released": "2026-10-29",
            "seenAt": "2026-11-05T22:07:10.766558419Z"
          }
        ],
        "githubStars": 34577,
        "npmWeekly": 2112385,
        "pypiWeekly": 7543894,
        "securityTxt": {
          "url": "https://selenium.dev/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-05T15:55:52.029072326Z"
        },
        "llmsTxt": {
          "url": "https://www.selenium.dev/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-05T15:27:15.974664791Z"
        },
        "domain": {
          "domain": "selenium.dev",
          "registered": "2019-02-22",
          "source": "https://pubapi.registry.google/rdap/domain/selenium.dev",
          "checkedAt": "2026-11-01T14:25:04.428349197Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/SeleniumHQ/selenium/trunk/py/CHANGES",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-11-05T13:03:41.919916677Z",
            "changedAt": "2026-10-30T05:47:45.515631115Z",
            "fingerprint": "e3c82d5501d6"
          },
          {
            "url": "https://raw.githubusercontent.com/SeleniumHQ/selenium/trunk/javascript/selenium-webdriver/CHANGES.md",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-11-05T13:03:39.95664344Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "bf0100c8a88b"
          },
          {
            "url": "https://raw.githubusercontent.com/SeleniumHQ/selenium/trunk/rb/CHANGES",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-11-05T13:03:43.924986629Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "43e2fa9f9eab"
          },
          {
            "url": "https://www.selenium.dev/blog/2026/selenium-4-50-released/",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-05T13:17:43.761366344Z",
            "changedAt": "2026-11-05T13:17:43.761366344Z",
            "fingerprint": "af00e2138ef2"
          },
          {
            "url": "https://www.selenium.dev/blog/2026/selenium-4-51-released/",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-05T13:17:46.13564137Z",
            "changedAt": "2026-11-05T13:17:46.13564137Z",
            "fingerprint": "bc25f44cf913"
          }
        ],
        "github": {
          "repo": "seleniumhq/selenium",
          "checkedAt": "2026-11-02T09:24:25.884603639Z",
          "stars": 34584,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-02T09:11:26Z",
          "openIssues": 106,
          "openPRs": 88,
          "issuesOpened90d": 51,
          "issuesClosed90d": 50,
          "prsMerged90d": 316,
          "ci": {
            "branch": "trunk",
            "runs": 50,
            "success": 48,
            "failure": 0,
            "other": 2,
            "latest": "success",
            "latestAt": "2026-11-02T09:16:22Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 5,
            "medianDays": 0
          }
        },
        "updatedAt": "2026-11-05T22:07:11.204545841Z"
      }
    },
    "edges": [
      {
        "by": 65,
        "category": "reliability",
        "leads": "selenium",
        "name": "Reliability",
        "reasons": {
          "a": "Local package. Installs from PyPI as AutoCua with Python 3.10 or later and the supported platforms stated (20). No CI runs the tests; the only workflow, use_case_label.yml, labels issues (0). GitHub issues weren't read, so the open-issue line is scored absent (0). Four tags in a week with no changelog file (5). Version 0.1.9 (0). 20 + 0 + 0 + 5 + 0 = 25.",
          "b": "Scored as local software. Official packages at 4.52.0 (29 October 2026) on Maven Central, RubyGems, NuGet and npm, with Python 3.10 stated in pyproject.toml and selenium-webdriver now requiring Node.js 22.23.4, 24.22.1 or 26.12.1 or newer (20). Public CI per binding plus Grid and Selenium Manager jobs, and the 15 most recent runs on trunk on 13 October 2026 succeeded except one cancelled cache job, per the 14 October check, not re-read on 1 November (25). 189 open issues and pull requests across five bindings, labelled by component, with a Grid regression in round-robin slot selection (open since 2 October) and an idle-session issue with 27 comments, per the 14 October check, not re-read on 1 November (21 of 25). The project says it does not follow semver. It usually deprecates before removal and lists removals in each binding's changelog, but 4.52.0 also changed the Ruby binding's certificate handling in the same release that deprecated the old behaviour (9 of 15). 4.x, marked Production/Stable in pyproject.toml (15)."
        },
        "scores": {
          "a": 25,
          "b": 90
        }
      },
      {
        "by": 47,
        "category": "schema",
        "leads": "selenium",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "Framework reading. No API reference or typed interface beyond run_agent's documented arguments (5 of 25). No llms.txt (0). The README says what each mode drives and where it runs, and agent_capabilities.md lists what it can do (16 of 20). Modes and device are documented strings (6 of 15). Many examples, no documented errors (10 of 15). Tags without a changelog (5 of 15). 5 + 0 + 16 + 6 + 10 + 5 = 42.",
          "b": "Graded as a library and a WebDriver server. Typed bindings, a `py.typed` marker and the W3C WebDriver specification as the wire contract. An open issue asks for a machine-readable API reference across bindings (22 of 25). llms.txt with notes for code generators (10). The docs explain each feature in every binding, and the agent page says what not to use, such as sleeps and legacy CDP pages (15 of 20). Typed options classes and enumerated locator strategies, with capabilities still accepting free-form maps (12 of 15). Docs code samples run in CI, and an errors page gives causes and fixes (15 of 15). Versioned releases and a changelog per binding (15)."
        },
        "scores": {
          "a": 42,
          "b": 89
        }
      },
      {
        "by": 35,
        "category": "transparency",
        "leads": "selenium",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "MIT (30). Says it sends data only to the chosen model provider and keeps everything else locally, and the source agrees (20 of 30). No deprecation policy (0). States no telemetry, and none was found (20). 30 + 20 + 0 + 20 = 70.",
          "b": "Apache-2.0, held by Software Freedom Conservancy (30). No privacy page on selenium.dev. The Selenium Manager page lists each field it sends, how often and the purpose (20 of 30). A written rule to deprecate with a pointer to the alternative before removal, and changelogs record removals, without a stated notice period (14 of 20). Telemetry is disclosed with three opt-outs, but on by default (16 of 20)."
        },
        "scores": {
          "a": 42,
          "b": 77
        }
      },
      {
        "by": 29,
        "category": "maintenance",
        "leads": "selenium",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "v0.1.9 tagged on 4 November 2026 (30). Four tags in 90 days (20). Issues and pull requests weren't read (0 of 25). The PyPI wheel is current (15). No CI; dependencies pinned per OS in requirements files (0 of 10). 30 + 20 + 0 + 15 + 0 = 65.",
          "b": "4.52.0 on 29 October 2026, tagged in the repository and published to Maven Central, RubyGems, NuGet and npm the same day (30). Six releases since 3 August 2026, 4.47.0 (10 August) to 4.52.0 (20). Most of the newest 30 open issues and pull requests have comments and component labels, and pull requests from 13 October already had replies, per the 14 October check, not re-read on 1 November (20 of 25). Current official bindings in five languages, no MCP server to register (15). Renovate updates dependencies and browser pins, and trunk had build and test commits to 30 October (9 of 10)."
        },
        "scores": {
          "a": 65,
          "b": 94
        }
      },
      {
        "by": 15,
        "category": "ergonomics",
        "leads": "selenium",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Framework reading. One call with a mode, provider, model and task runs a whole agent (20 of 25). A separate compression agent splices handoff summaries in, and runs are capped and stoppable (15 of 20). Permission and blocked-input errors are reported specifically, with no error reference (8 of 20). No resume or retry semantics described (2 of 20). Sensible defaults (simulators unless device is set), Python only (10 of 15). 20 + 15 + 8 + 2 + 10 = 55.",
          "b": "A library adds no tool definitions to context. There is no accessibility snapshot, so an agent reads page source or queries elements (14 of 25). `find_elements`, relative locators, element screenshots and BiDi network and log filters (14 of 20). Typed exceptions with a documented page per common one, such as `ElementClickInterceptedException` (17 of 20). Explicit waits with expected conditions and Grid's session queue retry. No idempotency concept applies (10 of 20). Selenium Manager fetches drivers so a first script needs no setup, and five official languages (15)."
        },
        "scores": {
          "a": 55,
          "b": 70
        }
      },
      {
        "by": 5,
        "category": "security",
        "leads": "selenium",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Framework reading (telemetry, approvals, guardrails, sandboxing). Provider keys stored in a local folder with Chrome profiles (10 of 30). The worker tools are an allow-list with no write tool, unseen ids are refused, downloads need a yes, but on Windows the model answers UAC elevation prompts itself through a kernel driver, with no person asked (6 of 20). The scraping ruleset has a prompt-injection instruction to log page text that gives instructions (10 of 15). Runs are logged in the app, with no audit log (7 of 15). No security policy, disclosure route or advisories found (5 of 20, for the vault and certificate handling). 10 + 6 + 10 + 7 + 5 = 38.",
          "b": "No credential for the bindings. Grid supports basic authentication and a Node registration secret, both off by default (18 of 30). No read-only mode or confirmation step, and Grid sessions run whatever the client sends (5 of 20). Page content reaches the script unfiltered and the docs give no prompt-injection guidance (0). Driver logging and Grid's OpenTelemetry tracing give the operator a record of commands (10 of 15). The organisation's SECURITY.md names security@seleniumhq.org. No bug bounty and no security.txt (404 on 17 October). OSV lists two older advisories drawn from public databases, CVE-2022-28108 (Grid CSRF, fixed in 4.0.0) and CVE-2023-5590 (a null pointer dereference, fixed in 4.14.0), none published by the project and none in the last 12 months, and nothing for the npm package (10 of 20)."
        },
        "scores": {
          "a": 38,
          "b": 43
        }
      }
    ],
    "facts": [
      {
        "a": "Agent framework",
        "b": "SDK + MCP",
        "name": "Kind"
      },
      {
        "a": "Ashish Yadav and contributors (ComputerUseAgent on GitHub)",
        "b": "Selenium project (Software Freedom Conservancy)",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-11-04",
        "b": "2026-10-29",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "none",
        "b": "35k stars, 1.8M npm/wk, 6.9M PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3.8/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Selenium scores 70.8 (BB) on agent readiness against AutoCua's 44.3 (E), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, AutoCua or Selenium?"
      },
      {
        "answer": "Yes. AutoCua is open source (MIT). Selenium is open source (Apache-2.0).",
        "question": "Are AutoCua and Selenium open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": [
          "No incidents deducted, where Selenium loses 3 points for them"
        ],
        "goodFor": "Developers who want a local agent to operate desktop apps, their own browser or phones across platforms, on a machine they control.",
        "slug": "autocua",
        "watchFor": "Two weeks old at version 0.1.9, with no changelog file"
      },
      {
        "aheadOn": [
          "Reliability, 90 against 25",
          "Schema \u0026 documentation, 89 against 42",
          "Agent ergonomics, 70 against 55",
          "Security \u0026 auth, 43 against 38",
          "Maintenance \u0026 community, 94 against 65",
          "Transparency \u0026 trust, 77 against 42"
        ],
        "also": [
          "Agent-ready, a grade of BB or better"
        ],
        "goodFor": "Agents that write test or automation scripts in any of five languages, and teams with a Grid.",
        "slug": "selenium",
        "watchFor": "No MCP server from the project. The docs point to community servers and say they are third-party"
      }
    ],
    "history": {
      "autocua": null,
      "selenium": [
        {
          "causes": [
            "event"
          ],
          "date": "2026-11-01",
          "delta": -3,
          "from": 73.8,
          "fromGrade": "BB",
          "to": 70.8,
          "toGrade": "BB"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.2,
          "from": 73.6,
          "fromGrade": "BB",
          "to": 73.8,
          "toGrade": "BB"
        }
      ]
    },
    "job": {
      "capability": "browser.control",
      "name": "Browser automation"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agent-browser-vs-autocua.json",
        "title": "agent-browser vs AutoCua",
        "url": "https://www.anchorterminal.com/compare/agent-browser-vs-autocua"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agent-browser-vs-selenium.json",
        "title": "agent-browser vs Selenium",
        "url": "https://www.anchorterminal.com/compare/agent-browser-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-autocua.json",
        "title": "Airtop vs AutoCua",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-autocua"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-selenium.json",
        "title": "Airtop vs Selenium",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anchor-browser-vs-autocua.json",
        "title": "Anchor Browser vs AutoCua",
        "url": "https://www.anchorterminal.com/compare/anchor-browser-vs-autocua"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anchor-browser-vs-selenium.json",
        "title": "Anchor Browser vs Selenium",
        "url": "https://www.anchorterminal.com/compare/anchor-browser-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-browser-use.json",
        "title": "AutoCua vs Browser Use",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-browser-use"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-browserless.json",
        "title": "AutoCua vs Browserless",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-browserless"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-bx-playwright.json",
        "title": "AutoCua vs BxPlaywright",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-bx-playwright"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-chrome-devtools-mcp.json",
        "title": "AutoCua vs Chrome DevTools MCP",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-chrome-devtools-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-functionize-mcp.json",
        "title": "AutoCua vs Functionize MCP server",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-functionize-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-hyperbrowser.json",
        "title": "AutoCua vs Hyperbrowser",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-hyperbrowser"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-kane-cli.json",
        "title": "AutoCua vs Kane CLI",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-kane-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-lightpanda.json",
        "title": "AutoCua vs Lightpanda",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-lightpanda"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-notte.json",
        "title": "AutoCua vs Notte",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-notte"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-playwright-mcp.json",
        "title": "AutoCua vs Playwright MCP",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-playwright-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-pomerado.json",
        "title": "AutoCua vs Pomerado",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-pomerado"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-puppeteer.json",
        "title": "AutoCua vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-puppeteer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-puppeteer-reference-server-archived.json",
        "title": "AutoCua vs Puppeteer (archived MCP reference server)",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-puppeteer-reference-server-archived"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-robocorp.json",
        "title": "AutoCua vs Robocorp",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-robocorp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-skyvern.json",
        "title": "AutoCua vs Skyvern",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-skyvern"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-steel.json",
        "title": "AutoCua vs Steel",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-steel"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autocua-vs-tinyfish.json",
        "title": "AutoCua vs TinyFish",
        "url": "https://www.anchorterminal.com/compare/autocua-vs-tinyfish"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browser-use-vs-selenium.json",
        "title": "Browser Use vs Selenium",
        "url": "https://www.anchorterminal.com/compare/browser-use-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-selenium.json",
        "title": "Browserbase vs Selenium",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserless-vs-selenium.json",
        "title": "Browserless vs Selenium",
        "url": "https://www.anchorterminal.com/compare/browserless-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bx-playwright-vs-selenium.json",
        "title": "BxPlaywright vs Selenium",
        "url": "https://www.anchorterminal.com/compare/bx-playwright-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/chrome-devtools-mcp-vs-selenium.json",
        "title": "Chrome DevTools MCP vs Selenium",
        "url": "https://www.anchorterminal.com/compare/chrome-devtools-mcp-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/functionize-mcp-vs-selenium.json",
        "title": "Functionize MCP server vs Selenium",
        "url": "https://www.anchorterminal.com/compare/functionize-mcp-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperbrowser-vs-selenium.json",
        "title": "Hyperbrowser vs Selenium",
        "url": "https://www.anchorterminal.com/compare/hyperbrowser-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kane-cli-vs-selenium.json",
        "title": "Kane CLI vs Selenium",
        "url": "https://www.anchorterminal.com/compare/kane-cli-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lightpanda-vs-selenium.json",
        "title": "Lightpanda vs Selenium",
        "url": "https://www.anchorterminal.com/compare/lightpanda-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/notte-vs-selenium.json",
        "title": "Notte vs Selenium",
        "url": "https://www.anchorterminal.com/compare/notte-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/playwright-mcp-vs-selenium.json",
        "title": "Playwright MCP vs Selenium",
        "url": "https://www.anchorterminal.com/compare/playwright-mcp-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pomerado-vs-selenium.json",
        "title": "Pomerado vs Selenium",
        "url": "https://www.anchorterminal.com/compare/pomerado-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/puppeteer-reference-server-archived-vs-selenium.json",
        "title": "Puppeteer (archived MCP reference server) vs Selenium",
        "url": "https://www.anchorterminal.com/compare/puppeteer-reference-server-archived-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/puppeteer-vs-selenium.json",
        "title": "Puppeteer vs Selenium",
        "url": "https://www.anchorterminal.com/compare/puppeteer-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/selenium-vs-skyvern.json",
        "title": "Selenium vs Skyvern",
        "url": "https://www.anchorterminal.com/compare/selenium-vs-skyvern"
      },
      {
        "json": "https://www.anchorterminal.com/compare/selenium-vs-steel.json",
        "title": "Selenium vs Steel",
        "url": "https://www.anchorterminal.com/compare/selenium-vs-steel"
      },
      {
        "json": "https://www.anchorterminal.com/compare/selenium-vs-tinyfish.json",
        "title": "Selenium vs TinyFish",
        "url": "https://www.anchorterminal.com/compare/selenium-vs-tinyfish"
      }
    ],
    "panel": null,
    "scores": [
      {
        "autocua": 25,
        "by": 65,
        "edge": "selenium",
        "key": "reliability",
        "name": "Reliability",
        "selenium": 90,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "autocua": 42,
        "by": 47,
        "edge": "selenium",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "selenium": 89,
        "weight": 13
      },
      {
        "autocua": 55,
        "by": 15,
        "edge": "selenium",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "selenium": 70,
        "weight": 13
      },
      {
        "autocua": 38,
        "by": 5,
        "edge": "selenium",
        "key": "security",
        "name": "Security \u0026 auth",
        "selenium": 43,
        "weight": 14
      },
      {
        "autocua": 60,
        "by": 0,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "selenium": 60,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "autocua": 65,
        "by": 29,
        "edge": "selenium",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "selenium": 94,
        "weight": 7
      },
      {
        "autocua": 42,
        "by": 35,
        "edge": "selenium",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "selenium": 77,
        "weight": 7
      }
    ],
    "summary": "Selenium scores 70.8 (BB) on agent readiness against AutoCua's 44.3 (E), and leads in 6 of 7 scored categories. Both do browser automation.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "autocua": "A capable, fast-moving open-source agent for driving desktops, browsers and phones through real input and accessibility trees, with a careful safety section. It's two weeks old, with no test CI or changelog, and on Windows the model itself decides whether to accept an admin elevation prompt.",
      "selenium": "Selenium is stable, Apache-2.0 software on 4.52.0 with bindings in five languages, six releases since August, an llms.txt and an agent guide. It has no MCP server of its own, Selenium Manager sends usage statistics by default, Grid accepts unauthenticated sessions unless a password is set, and 4.52.0 changed Ruby's Grid certificate handling without a released warning."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/autocua-vs-selenium",
    "json": "https://www.anchorterminal.com/compare/autocua-vs-selenium.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/autocua-vs-selenium.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/autocua-vs-selenium.min.md"
  },
  "markdown": "Selenium scores 70.8 (BB) on agent readiness against AutoCua's 44.3 (E), and leads in 6 of 7 scored categories. Both do browser automation.\n\n- AutoCua: grade E, 44.3/100, rank #1100 of 1354. Markdown https://www.anchorterminal.com/tools/autocua.md · JSON https://www.anchorterminal.com/api/v1/tools/autocua.json\n- Selenium: grade BB, 70.8/100, rank #168 of 1354. Markdown https://www.anchorterminal.com/tools/selenium.md · JSON https://www.anchorterminal.com/api/v1/tools/selenium.json\n- Best desktop and mobile app automation for AI agents: https://www.anchorterminal.com/best/desktop-automation/index.md\n- All 48 desktop comparisons: https://www.anchorterminal.com/compare/desktop-automation/index.md\n- Best browser automation tools for AI agents: https://www.anchorterminal.com/best/browser/index.md\n- All 230 browser comparisons: https://www.anchorterminal.com/compare/browser/index.md\n\n## Which one, for what\n\n### AutoCua (E)\n\nGood for: Developers who want a local agent to operate desktop apps, their own browser or phones across platforms, on a machine they control.\n\nAlso in its favour:\n- No incidents deducted, where Selenium loses 3 points for them\n\nWatch for: Two weeks old at version 0.1.9, with no changelog file\n\n### Selenium (BB)\n\nGood for: Agents that write test or automation scripts in any of five languages, and teams with a Grid.\n\nAhead on:\n- Reliability, 90 against 25\n- Schema \u0026 documentation, 89 against 42\n- Agent ergonomics, 70 against 55\n- Security \u0026 auth, 43 against 38\n- Maintenance \u0026 community, 94 against 65\n- Transparency \u0026 trust, 77 against 42\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n\nWatch for: No MCP server from the project. The docs point to community servers and say they are third-party\n\n\n## Why the edge\n\n### Reliability: Selenium +65\n\n- AutoCua (25): Local package. Installs from PyPI as AutoCua with Python 3.10 or later and the supported platforms stated (20). No CI runs the tests; the only workflow, use_case_label.yml, labels issues (0). GitHub issues weren't read, so the open-issue line is scored absent (0). Four tags in a week with no changelog file (5). Version 0.1.9 (0). 20 + 0 + 0 + 5 + 0 = 25.\n- Selenium (90): Scored as local software. Official packages at 4.52.0 (29 October 2026) on Maven Central, RubyGems, NuGet and npm, with Python 3.10 stated in pyproject.toml and selenium-webdriver now requiring Node.js 22.23.4, 24.22.1 or 26.12.1 or newer (20). Public CI per binding plus Grid and Selenium Manager jobs, and the 15 most recent runs on trunk on 13 October 2026 succeeded except one cancelled cache job, per the 14 October check, not re-read on 1 November (25). 189 open issues and pull requests across five bindings, labelled by component, with a Grid regression in round-robin slot selection (open since 2 October) and an idle-session issue with 27 comments, per the 14 October check, not re-read on 1 November (21 of 25). The project says it does not follow semver. It usually deprecates before removal and lists removals in each binding's changelog, but 4.52.0 also changed the Ruby binding's certificate handling in the same release that deprecated the old behaviour (9 of 15). 4.x, marked Production/Stable in pyproject.toml (15).\n\n### Schema \u0026 documentation: Selenium +47\n\n- AutoCua (42): Framework reading. No API reference or typed interface beyond run_agent's documented arguments (5 of 25). No llms.txt (0). The README says what each mode drives and where it runs, and agent_capabilities.md lists what it can do (16 of 20). Modes and device are documented strings (6 of 15). Many examples, no documented errors (10 of 15). Tags without a changelog (5 of 15). 5 + 0 + 16 + 6 + 10 + 5 = 42.\n- Selenium (89): Graded as a library and a WebDriver server. Typed bindings, a `py.typed` marker and the W3C WebDriver specification as the wire contract. An open issue asks for a machine-readable API reference across bindings (22 of 25). llms.txt with notes for code generators (10). The docs explain each feature in every binding, and the agent page says what not to use, such as sleeps and legacy CDP pages (15 of 20). Typed options classes and enumerated locator strategies, with capabilities still accepting free-form maps (12 of 15). Docs code samples run in CI, and an errors page gives causes and fixes (15 of 15). Versioned releases and a changelog per binding (15).\n\n### Transparency \u0026 trust: Selenium +35\n\n- AutoCua (42): MIT (30). Says it sends data only to the chosen model provider and keeps everything else locally, and the source agrees (20 of 30). No deprecation policy (0). States no telemetry, and none was found (20). 30 + 20 + 0 + 20 = 70.\n- Selenium (77): Apache-2.0, held by Software Freedom Conservancy (30). No privacy page on selenium.dev. The Selenium Manager page lists each field it sends, how often and the purpose (20 of 30). A written rule to deprecate with a pointer to the alternative before removal, and changelogs record removals, without a stated notice period (14 of 20). Telemetry is disclosed with three opt-outs, but on by default (16 of 20).\n\n### Maintenance \u0026 community: Selenium +29\n\n- AutoCua (65): v0.1.9 tagged on 4 November 2026 (30). Four tags in 90 days (20). Issues and pull requests weren't read (0 of 25). The PyPI wheel is current (15). No CI; dependencies pinned per OS in requirements files (0 of 10). 30 + 20 + 0 + 15 + 0 = 65.\n- Selenium (94): 4.52.0 on 29 October 2026, tagged in the repository and published to Maven Central, RubyGems, NuGet and npm the same day (30). Six releases since 3 August 2026, 4.47.0 (10 August) to 4.52.0 (20). Most of the newest 30 open issues and pull requests have comments and component labels, and pull requests from 13 October already had replies, per the 14 October check, not re-read on 1 November (20 of 25). Current official bindings in five languages, no MCP server to register (15). Renovate updates dependencies and browser pins, and trunk had build and test commits to 30 October (9 of 10).\n\n### Agent ergonomics: Selenium +15\n\n- AutoCua (55): Framework reading. One call with a mode, provider, model and task runs a whole agent (20 of 25). A separate compression agent splices handoff summaries in, and runs are capped and stoppable (15 of 20). Permission and blocked-input errors are reported specifically, with no error reference (8 of 20). No resume or retry semantics described (2 of 20). Sensible defaults (simulators unless device is set), Python only (10 of 15). 20 + 15 + 8 + 2 + 10 = 55.\n- Selenium (70): A library adds no tool definitions to context. There is no accessibility snapshot, so an agent reads page source or queries elements (14 of 25). `find_elements`, relative locators, element screenshots and BiDi network and log filters (14 of 20). Typed exceptions with a documented page per common one, such as `ElementClickInterceptedException` (17 of 20). Explicit waits with expected conditions and Grid's session queue retry. No idempotency concept applies (10 of 20). Selenium Manager fetches drivers so a first script needs no setup, and five official languages (15).\n\n### Security \u0026 auth: Selenium +5\n\n- AutoCua (38): Framework reading (telemetry, approvals, guardrails, sandboxing). Provider keys stored in a local folder with Chrome profiles (10 of 30). The worker tools are an allow-list with no write tool, unseen ids are refused, downloads need a yes, but on Windows the model answers UAC elevation prompts itself through a kernel driver, with no person asked (6 of 20). The scraping ruleset has a prompt-injection instruction to log page text that gives instructions (10 of 15). Runs are logged in the app, with no audit log (7 of 15). No security policy, disclosure route or advisories found (5 of 20, for the vault and certificate handling). 10 + 6 + 10 + 7 + 5 = 38.\n- Selenium (43): No credential for the bindings. Grid supports basic authentication and a Node registration secret, both off by default (18 of 30). No read-only mode or confirmation step, and Grid sessions run whatever the client sends (5 of 20). Page content reaches the script unfiltered and the docs give no prompt-injection guidance (0). Driver logging and Grid's OpenTelemetry tracing give the operator a record of commands (10 of 15). The organisation's SECURITY.md names security@seleniumhq.org. No bug bounty and no security.txt (404 on 17 October). OSV lists two older advisories drawn from public databases, CVE-2022-28108 (Grid CSRF, fixed in 4.0.0) and CVE-2023-5590 (a null pointer dereference, fixed in 4.14.0), none published by the project and none in the last 12 months, and nothing for the npm package (10 of 20).\n\n## Score by category\n\n| Category | Weight | AutoCua | Selenium | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 25 | 90 | Selenium +65 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 42 | 89 | Selenium +47 |\n| Agent ergonomics | 13% (16.2 this run) | 55 | 70 | Selenium +15 |\n| Security \u0026 auth | 14% (17.5 this run) | 38 | 43 | Selenium +5 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 60 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 65 | 94 | Selenium +29 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 42 | 77 | Selenium +35 |\n| Negative events | ≤15 | 0 | -3 | |\n| **Total** | | **44.3 · E** | **70.8 · BB** | |\n\n## Facts side by side\n\n| Fact | AutoCua | Selenium |\n| --- | --- | --- |\n| Kind | Agent framework | SDK + MCP |\n| Vendor | Ashish Yadav and contributors (ComputerUseAgent on GitHub) | Selenium project (Software Freedom Conservancy) |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  | HTTP |\n| Auth | None | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | MIT | Apache-2.0 |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-11-04 | 2026-10-29 |\n| Terms last updated | no document linked | no document linked |\n| Privacy policy last updated | no document linked | no document linked |\n| Popularity | none | 35k stars, 1.8M npm/wk, 6.9M PyPI/wk |\n| Agent reviews | none | 3.8/5 (4) |\n\n## How the scores have moved\n\n### AutoCua\n\nNo score change since it was listed.\n\n### Selenium\n\n- -3.0 on 1 November 2026: negative event\n- +0.2 on 27 October 2026: checklist\n\n## Verdicts\n\n**AutoCua.** A capable, fast-moving open-source agent for driving desktops, browsers and phones through real input and accessibility trees, with a careful safety section. It's two weeks old, with no test CI or changelog, and on Windows the model itself decides whether to accept an admin elevation prompt.\n\n**Selenium.** Selenium is stable, Apache-2.0 software on 4.52.0 with bindings in five languages, six releases since August, an llms.txt and an agent guide. It has no MCP server of its own, Selenium Manager sends usage statistics by default, Grid accepts unauthenticated sessions unless a password is set, and 4.52.0 changed Ruby's Grid certificate handling without a released warning.\n\n## Before you call either\n\n### AutoCua\n\n1. pip install AutoCua, then call run_agent with a mode such as \"web use\" or \"computer use\", a provider, a model and a task\n2. Run it on a machine or account you can afford to lose; it drives real input and keeps logged-in browser profiles\n3. On Windows, don't install the Interception driver unless you accept the model deciding UAC prompts\n4. Set AutoCua_DATA_DIR to keep keys and profiles somewhere private\n5. Phones go over USB from a script; Wi-Fi only through the desktop app\n\n### Selenium\n\n1. Install with `pip install selenium` (Python 3.10 or later) and let Selenium Manager fetch drivers. Do not set driver paths\n2. Use `WebDriverWait` with expected conditions, never fixed sleeps, and do not mix implicit and explicit waits\n3. Set `SE_AVOID_STATS=true` to stop Selenium Manager sending usage statistics\n4. Point coding agents at https://www.selenium.dev/llms.txt. Most Selenium 2 and 3 era examples use removed APIs\n5. Set `--username` and `--password` before exposing a Grid beyond localhost. Check `http://localhost:4444/status` before creating sessions\n6. On Ruby 4.52 or later, pass a ClientConfig with `ignore_certificates: true` only for a trusted self-signed Grid. Otherwise trust its issuer\n\n## Questions\n\n### Which is better for AI agents, AutoCua or Selenium?\n\nSelenium scores 70.8 (BB) on agent readiness against AutoCua's 44.3 (E), and leads in 6 of 7 scored categories.\n\n### Are AutoCua and Selenium open source?\n\nYes. AutoCua is open source (MIT). Selenium is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/autocua-vs-selenium.json, and with the fewest tokens: https://www.anchorterminal.com/compare/autocua-vs-selenium.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"autocua\", \"b\": \"selenium\"}`. From a terminal: `anchor compare autocua selenium`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/autocua.json and https://www.anchorterminal.com/api/v1/tools/selenium.json\n\n## Other comparisons with AutoCua or Selenium\n\n- [agent-browser vs AutoCua](https://www.anchorterminal.com/compare/agent-browser-vs-autocua.md)\n- [agent-browser vs Selenium](https://www.anchorterminal.com/compare/agent-browser-vs-selenium.md)\n- [Airtop vs AutoCua](https://www.anchorterminal.com/compare/airtop-vs-autocua.md)\n- [Airtop vs Selenium](https://www.anchorterminal.com/compare/airtop-vs-selenium.md)\n- [Anchor Browser vs AutoCua](https://www.anchorterminal.com/compare/anchor-browser-vs-autocua.md)\n- [Anchor Browser vs Selenium](https://www.anchorterminal.com/compare/anchor-browser-vs-selenium.md)\n- [AutoCua vs Browser Use](https://www.anchorterminal.com/compare/autocua-vs-browser-use.md)\n- [AutoCua vs Browserless](https://www.anchorterminal.com/compare/autocua-vs-browserless.md)\n- [AutoCua vs BxPlaywright](https://www.anchorterminal.com/compare/autocua-vs-bx-playwright.md)\n- [AutoCua vs Chrome DevTools MCP](https://www.anchorterminal.com/compare/autocua-vs-chrome-devtools-mcp.md)\n- [AutoCua vs Functionize MCP server](https://www.anchorterminal.com/compare/autocua-vs-functionize-mcp.md)\n- [AutoCua vs Hyperbrowser](https://www.anchorterminal.com/compare/autocua-vs-hyperbrowser.md)\n- [AutoCua vs Kane CLI](https://www.anchorterminal.com/compare/autocua-vs-kane-cli.md)\n- [AutoCua vs Lightpanda](https://www.anchorterminal.com/compare/autocua-vs-lightpanda.md)\n- [AutoCua vs Notte](https://www.anchorterminal.com/compare/autocua-vs-notte.md)\n- [AutoCua vs Playwright MCP](https://www.anchorterminal.com/compare/autocua-vs-playwright-mcp.md)\n- [AutoCua vs Pomerado](https://www.anchorterminal.com/compare/autocua-vs-pomerado.md)\n- [AutoCua vs Puppeteer](https://www.anchorterminal.com/compare/autocua-vs-puppeteer.md)\n- [AutoCua vs Puppeteer (archived MCP reference server)](https://www.anchorterminal.com/compare/autocua-vs-puppeteer-reference-server-archived.md)\n- [AutoCua vs Robocorp](https://www.anchorterminal.com/compare/autocua-vs-robocorp.md)\n- [AutoCua vs Skyvern](https://www.anchorterminal.com/compare/autocua-vs-skyvern.md)\n- [AutoCua vs Steel](https://www.anchorterminal.com/compare/autocua-vs-steel.md)\n- [AutoCua vs TinyFish](https://www.anchorterminal.com/compare/autocua-vs-tinyfish.md)\n- [Browser Use vs Selenium](https://www.anchorterminal.com/compare/browser-use-vs-selenium.md)\n- [Browserbase vs Selenium](https://www.anchorterminal.com/compare/browserbase-vs-selenium.md)\n- [Browserless vs Selenium](https://www.anchorterminal.com/compare/browserless-vs-selenium.md)\n- [BxPlaywright vs Selenium](https://www.anchorterminal.com/compare/bx-playwright-vs-selenium.md)\n- [Chrome DevTools MCP vs Selenium](https://www.anchorterminal.com/compare/chrome-devtools-mcp-vs-selenium.md)\n- [Functionize MCP server vs Selenium](https://www.anchorterminal.com/compare/functionize-mcp-vs-selenium.md)\n- [Hyperbrowser vs Selenium](https://www.anchorterminal.com/compare/hyperbrowser-vs-selenium.md)\n- [Kane CLI vs Selenium](https://www.anchorterminal.com/compare/kane-cli-vs-selenium.md)\n- [Lightpanda vs Selenium](https://www.anchorterminal.com/compare/lightpanda-vs-selenium.md)\n- [Notte vs Selenium](https://www.anchorterminal.com/compare/notte-vs-selenium.md)\n- [Playwright MCP vs Selenium](https://www.anchorterminal.com/compare/playwright-mcp-vs-selenium.md)\n- [Pomerado vs Selenium](https://www.anchorterminal.com/compare/pomerado-vs-selenium.md)\n- [Puppeteer (archived MCP reference server) vs Selenium](https://www.anchorterminal.com/compare/puppeteer-reference-server-archived-vs-selenium.md)\n- [Puppeteer vs Selenium](https://www.anchorterminal.com/compare/puppeteer-vs-selenium.md)\n- [Selenium vs Skyvern](https://www.anchorterminal.com/compare/selenium-vs-skyvern.md)\n- [Selenium vs Steel](https://www.anchorterminal.com/compare/selenium-vs-steel.md)\n- [Selenium vs TinyFish](https://www.anchorterminal.com/compare/selenium-vs-tinyfish.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-06",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "AutoCua vs Selenium",
        "url": ""
      }
    ],
    "description": "Selenium scores 70.8 (BB) to AutoCua's 44.3 (E) for browser automation. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "AutoCua E 44.3",
      "Selenium BB 70.8",
      "scores"
    ],
    "h1": "AutoCua vs Selenium",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/autocua-vs-selenium",
    "published": "2026-10-01",
    "section": "tools",
    "title": "AutoCua vs Selenium for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-06",
    "url": "https://www.anchorterminal.com/compare/autocua-vs-selenium"
  },
  "tokens": {
    "markdown": 4450,
    "slim": 2280
  },
  "version": 1
}
