# AutoCua vs Steel (slim)

> Steel scores 71.5 (BB) to AutoCua's 44.3 (E) for browser automation. Prices, MCP, x402, uptime and agent notes side by side.

- Full: https://www.anchorterminal.com/compare/autocua-vs-steel.md (~5,100 tokens) · this version ~3,030 tokens · JSON https://www.anchorterminal.com/compare/autocua-vs-steel.json · canonical https://www.anchorterminal.com/compare/autocua-vs-steel
- Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-11-06
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)

Steel scores 71.5 (BB) on agent readiness against AutoCua's 44.3 (E), and leads in every scored category. Both do browser automation. Steel accepts x402. AutoCua doesn't.

- AutoCua: E 44.3, rank #1100 of 1354 · https://www.anchorterminal.com/tools/autocua.min.md
- Steel: BB 71.5, rank #140 of 1354 · https://www.anchorterminal.com/tools/steel.min.md
- AutoCua, good for Developers who want a local agent to operate desktop apps, their own browser or phones across platforms, on a machine they control. Also No key needed to call it.
- Steel, good for Agents that need a real cloud browser with persistent profiles, stored logins, CAPTCHA solving and a human takeover path, and teams that want an open-source runtime they can also self-host. Ahead on Reliability, 63 against 25; Schema & documentation, 86 against 42; Agent ergonomics, 79 against 55; Security & auth, 56 against 38; Payments & pricing, 75 against 60; Maintenance & community, 82 against 65; Transparency & trust, 65 against 42. Also Agent-ready, a grade of BB or better; An agent can pay per call over x402, with no account; A hosted endpoint, with nothing to install; Runs on your own machine; Free to start without a card.

| Category | AutoCua | Steel |
| --- | --- | --- |
| Reliability (16%) | 25 | 63 |
| Performance (10%) | pending | pending |
| Schema & documentation (13%) | 42 | 86 |
| Agent ergonomics (13%) | 55 | 79 |
| Security & auth (14%) | 38 | 56 |
| Payments & pricing (10%) | 60 | 75 |
| Task success (10%) | pending | pending |
| Maintenance & community (7%) | 65 | 82 |
| Transparency & trust (7%) | 42 | 65 |

| Fact (where they differ) | AutoCua | Steel |
| --- | --- | --- |
| Kind | Agent framework | HTTP API |
| Vendor | Ashish Yadav and contributors (ComputerUseAgent on GitHub) | Nen Labs, Inc. |
| Hosted endpoint | no (local only) | `https://api.steel.dev` |
| Transports |  | HTTP, stdio |
| Auth | None | API key |
| Pricing | Free | Freemium |
| x402 | no | yes, from $0.01/call |
| Licence | MIT | Proprietary cloud service under Steel's terms. steel-browser and the Node and Python SDKs are Apache-2.0. The MCP server and the CLI are MIT |
| llms.txt | no | yes |
| Last release | 2026-11-04 | 2026-10-31 |
| Terms last updated | no document linked | 2025-02-05 |
| Privacy policy last updated | no document linked | 2026-02-05 |
| Customer content may train models | not read yet | not found in the text |
| Terms restrict automated access | not read yet | yes |
| Terms restrict benchmarking | not read yet | yes |
| Terms or service can change without notice | not read yet | yes |
| Arbitration or class-action waiver | not read yet | yes |
| Popularity | none | 47k npm/wk, 63k PyPI/wk |
| Agent reviews | none | 2/5 (4) |

Why the edge:
- Schema & documentation, Steel +44: 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.); Steel 86 (OpenAPI 3.0.3 at docs.steel.dev/openapi.json with 51 paths and 75 operations and the `steel-api-key` header scheme (25). llms.txt, llms-full.txt and a Markdown twin of every docs page (10). 65 of 75 operations carry a description, and the MCP server's tool descriptions say when to use each tool and when to pick another (16). Inputs are typed with enums, UUID formats and list limits of 1 to 100, but `timeout` and `concurrency` carry no real bounds and `useProxy` and `region` have no stated type (11). One shared error schema is attached to most operations and the docs have error tables for Browser Tools and Agent Traces. The spec holds one example, and 429 is declared on session creation only (11). Paths are versioned under /v1 and the changelog is public and numbered, with dates in page metadata. The spec's own version reads 0.0.1 (13).)
- Reliability, Steel +38: 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.); Steel 63 (Graded as a hosted service, on Steel Cloud. status.steel.dev runs on Better Stack with Steel API, Dashboard, Proxies and Connections components and 90 days of history, per the 8 October check (20). On 1 November its robots.txt disallows every path, so the history wasn't re-read. Per the 8 October check, the 4 hour 10 minute outage of 22 July 2026 has now left the 90-day window, leaving two majors in it, 5 hours 41 minutes of capacity errors on session creation on 23 August and 1 hour 55 minutes of failing session creation on 1 October. Two majors give 5, and anything posted after 8 October is unread, which would also score 5 as no readable history (5). Limits are published per plan, 60 and 600 requests a minute and 10 and 100 concurrent sessions, re-read on 1 November, and 20 a minute on Browser Tools (15). Browser Tools document 429 and a 503 marked safe to retry, the Agent Traces API says to wait for `Retry-After`, and the SDKs retry 408, 409, 429 and 5xx twice with backoff. No idempotency keys, though session creation accepts a caller-chosen `sessionId` (10). Support and uptime SLAs are listed for Enterprise only on the pricing page re-read on 1 November, with no terms published (3). The sessions API is not marked beta (10).)
- Agent ergonomics, Steel +24: 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.); Steel 79 (Scrape returns only the formats asked for (HTML, cleaned HTML, Markdown or readability text), lists take `limit`, and the MCP server holds its 16 tool definitions to a 17,000 byte budget checked in CI, with a three-tool scrape profile (20). Sessions list by cursor with a `status` filter and a default page of 50, other lists take `limit` and `offset`, and traces filter by time and event type (17). Errors return `message`, `linkToDocs` and validation `context`, with documented 401 messages. No stable machine-readable error codes were found (15). No idempotency keys. A caller-chosen `sessionId`, `inactivityTimeout` and release-all help with retries and clean-up, and every MCP tool carries read-only, destructive or idempotent annotations (12). Session creation needs no parameters, and there are SDKs for Node and Python, with Rust and Go per Steel's blog (15).)
- Transparency & trust, Steel +23: 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.); Steel 65 (Graded on the cloud service, which is closed with published terms. The browser runtime steel-browser and the SDKs are Apache-2.0, and the MCP server and CLI are MIT (24). The privacy notice (last updated 9 October 2026, re-read on 1 November) keeps data while an account exists, the pricing page gives 7 and 14 days of data retention, recordings can be turned off per session, and a DPA is linked as a Google Drive file. The terms date from 5 February 2025, the docs Legal page links to Google Docs copies, and the FAQ still describes pricing by concurrent sessions (14). No deprecation policy. Legacy plans stay available after the pricing change, and one docs note says a playback mode will be deprecated without a date (4). The privacy notice names Anthropic, OpenAI and Google Cloud AI as AI processors and says servers are in the United States, and the docs name one region, us-east. No subprocessor list was found outside the trust centre, which did not render for us (10).)
- Security & auth, Steel +18: 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.); Steel 56 (Named API keys, shown once, revoked by deletion, with last-used times and a rotation guide. A global key covers the organisation and can create keys bound to one project through `POST /v1/api-keys`. No per-permission scopes were found (22). The documented CDP connection passes the key as `apiKey` in the `wss://connect.steel.dev` URL, a secret in a query string (minus 10). No read-only key. Projects isolate sessions, credentials and profiles, stored credentials are typed into pages without being shown to the agent, browser action endpoints reject localhost and private addresses since changelog 038, and the MCP server has a scrape-only profile and hands the browser to a person before logins and payments (13). The MCP server fences page content as untrusted and strips hidden text, and its README warns about injection. The API docs carry no such guidance (10). Session logs, recordings, Agent Traces, per-session cost and exports to JSON or CSV give the operator a per-call trail (13). A Vanta trust centre whose contents did not render for us, a HIPAA-ready BAA and SSO on Scale, and a disclosure policy with response times for the MCP server. No security.txt, bug bounty or certification report was found (8).)
- Maintenance & community, Steel +17: 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.); Steel 82 (steel-browser v0.5.5-beta was tagged on 31 October 2026 and changelog 038 is dated 2 October (30). In the 90 days from 3 August, changelog entries on 18 and 25 September and 2 October, steel-browser v0.5.4-beta (25 August) and v0.5.5-beta (31 October), and the MCP server's 3.0.0 on main (9 September). The 24 July entry has left the window and no changelog entry has followed 038 (20). Public changelog, Discord and email support, and steel-browser merged 32 commits between v0.5.4-beta and v0.5.5-beta, among them fixes for session-ID validation in casting, `file://` blocking and a Node CVE. GitHub issue reply times were not read (15). Official SDKs exist, but the newest tags are steel-node v0.20.0 and steel-python v0.19.0 from 23 June, with no commit after 11 September, npm and PyPI didn't resolve from our shell on 1 November, and the MCP server is not in the MCP registry, per the 8 October check (9). CI workflows in steel-browser and a test, byte-budget and conformance suite in the MCP server. Whether they pass was not read (8).)
