How Smooth’s scores are calculated
The full audit trail, recomputed from the verdict data at build time through the same code that produced the leaderboard: verdict × quality × story weight per cell, cells sum to dimension scores, dimensions blend into the PA Score. Every number on the product page is reproducible from this page alone; for why the formula looks like this, see the methodology.
verdict factors: full ×1.0 · partial ×0.6 · disputed ×0.3 · none ×0.0 · n/a excluded from both sides · cell points = weight × quality × factor · cell max = weight × 10
PA Score23/100
Agent-ready 37.7 × 0.30 = 11.31
API quality 0.0 × 0.20 = 0.00
Openness 6.0 × 0.20 = 1.20
Built-in AI 61.4 × 0.15 = 9.21
Automation 6.9 × 0.15 = 1.03
(11.31 + 0.00 + 1.20 + 9.21 + 1.03) ÷ (0.30 + 0.20 + 0.20 + 0.15 + 0.15) = 22.75 ÷ 1.00 = 22.8
Scores are stored to 1 decimal; the product page’s pills round to whole numbers for display. Each dimension below shows the stories, verdicts, and cited evidence behind its number.
Agent-ready37.7/100×0.30 of the PA blend
Outside-in: can YOUR agent reach and drive this product — API, MCP, CLI, headless runs, agent docs.
Point an agent at llms.txt or agent-oriented docsweight 2
2 (weight) × 9 (quality) × 1.0 (full) = 18.0 of 20 max
- [probe] https://docs.smooth.sh/llms.txt“PROBE llms.txt: HTTP 200 at https://docs.smooth.sh/llms.txt # Smooth ## Docs - [Introduction](https://docs.smooth.sh/index.md): Welcome to Smooth - [Quickstart](https://docs.smoo”
- [claimed-docs] https://docs.smooth.sh/cli/other-agents.md“Smooth CLI works with any agent that can run CLI commands.”
- [claimed-docs] https://docs.smooth.sh/cli/claude-code.md“Ask Claude to do something on the web. It will use Smooth automatically.”
Run the product headlessly / in CI for automationweight 2
2 (weight) × 6 (quality) × 0.6 (partial) = 7.2 of 20 max
- [claimed-docs] https://docs.smooth.sh“Plug-and-play: Run a task in just 4 lines of code, making it easy to integrate into your workflow.”
- [claimed-docs] https://docs.smooth.sh/quickstart.md“task = smooth_client.run("Go to google flights and find the cheapest flight from London to Paris today")”
- [claimed-docs] https://docs.smooth.sh/api-reference/introduction.md“The Smooth API enables programmatic browser automation through REST endpoints. You can run AI-powered tasks, create interactive browser sessions, and extend agent capabilities with custom tools.”
- [claimed-docs] https://docs.smooth.sh/api-reference/polling.md“The API uses polling rather than webhooks or WebSockets for several reasons: Simplicity - No need to set up webhook endpoints or maintain WebSocket connections”
- [claimed-docs] https://docs.smooth.sh/api-reference/task/list-tasks.md“List all tasks for the authenticated user.”
- [claimed-docs] https://docs.smooth.sh/api-reference/task/cancel-task.md“Cancel a running task by its ID.”
- [claimed-docs] https://docs.smooth.sh/cli/other-agents.md“Smooth CLI works with any agent that can run CLI commands.”
- [probe] https://docs.smooth.sh/cli/overview“official CLI documented at https://docs.smooth.sh/cli/overview”
Plug MCP servers into this product so it can use their toolsweight 3
3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max
- [claimed-docs] https://docs.smooth.sh/methods/custom-tools.md“Custom tools allow you to give Smooth any arbitrary function as a tool. This is similar to MCP (Model Context Protocol) but without having to deal with servers or additional infrastructure.”
- [claimed-docs] https://docs.smooth.sh/methods/custom-tools.md“Custom tools allow you to give Smooth any arbitrary function as a tool.”
- [claimed-docs] https://docs.smooth.sh/api-reference/custom-tools.md“Custom tools allow you to extend the agent's capabilities by registering functions that it can call during execution. When the agent needs to perform an action that your tool provides, it will pause and wait for you to execute the tool and return the result.”
Connect an agent via an official MCP serverweight 3
3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max
- [claimed-docs] https://docs.smooth.sh/methods/custom-tools.md“Custom tools allow you to give Smooth any arbitrary function as a tool. This is similar to MCP (Model Context Protocol) but without having to deal with servers or additional infrastructure.”
- [claimed-docs] https://docs.smooth.sh/methods/custom-tools.md“Custom tools allow you to give Smooth any arbitrary function as a tool.”
Use an official CLIweight 2
2 (weight) × 8 (quality) × 1.0 (full) = 16.0 of 20 max
- [claimed-docs] https://docs.smooth.sh/cli/overview.md“Give your AI agent a browser that actually works”
- [claimed-docs] https://docs.smooth.sh/cli/claude-code.md“Ask Claude to do something on the web. It will use Smooth automatically.”
- [claimed-docs] https://docs.smooth.sh/cli/openclaw.md“Ask your agent to do something on the web. It will use Smooth automatically.”
- [claimed-docs] https://docs.smooth.sh/cli/other-agents.md“Smooth CLI works with any agent that can run CLI commands.”
- [claimed-docs] https://docs.smooth.sh/cli/features/localhost.md“Your agent can access localhost and your local network through a secure tunnel. This is perfect for testing local apps, accessing internal tools, or working with development servers.”
- [claimed-docs] https://docs.smooth.sh/cli/features/live-view.md“Every session comes with a live view URL where you can watch your agent browse in real-time. You can also take over and interact with the browser yourself.”
- [github] https://github.com/circlemind-ai/smooth-sdk“The Smooth CLI is a browser for AI agents, enabling tools like Claude Code to navigate the web quickly, cheaply, and reliably.”
- [probe] https://docs.smooth.sh/cli/overview“official CLI documented at https://docs.smooth.sh/cli/overview”
Drive the product through a documented public APIweight 3
3 (weight) × 8 (quality) × 1.0 (full) = 24.0 of 30 max
- [claimed-docs] https://docs.smooth.sh/api-reference/introduction.md“The Smooth API enables programmatic browser automation through REST endpoints. You can run AI-powered tasks, create interactive browser sessions, and extend agent capabilities with custom tools.”
- [claimed-docs] https://docs.smooth.sh/api-reference/sessions.md“Sessions allow you to maintain a persistent browser instance and perform multiple actions sequentially. This is useful for complex workflows like logging in, navigating, and extracting data across multiple pages.”
- [claimed-docs] https://docs.smooth.sh/api-reference/custom-tools.md“Custom tools allow you to extend the agent's capabilities by registering functions that it can call during execution. When the agent needs to perform an action that your tool provides, it will pause and wait for you to execute the tool and return the result.”
- [claimed-docs] https://docs.smooth.sh/api-reference/task/list-tasks.md“List all tasks for the authenticated user.”
- [claimed-docs] https://docs.smooth.sh/api-reference/task/cancel-task.md“Cancel a running task by its ID.”
- [claimed-docs] https://docs.smooth.sh/api-reference/event/send-event.md“Send an event to a running task. This is used for: - **Session actions**: `run_task`, `goto`, `extract`, `evaluate_js`, `close`”
- [claimed-docs] https://docs.smooth.sh/quickstart.md“task = smooth_client.run("Go to google flights and find the cheapest flight from London to Paris today")”
- [probe] https://docs.smooth.sh/openapi.json“PROBE openapi: all candidate paths 404 (https://docs.smooth.sh/openapi.json, https://docs.smooth.sh/swagger.json, https://docs.smooth.sh/api/openapi.json, https://docs.smooth.sh/.well-known/openapi.json)”
Issue scoped/least-privilege API credentials for an agentweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Build against official SDKsweight 2
2 (weight) × 7 (quality) × 1.0 (full) = 14.0 of 20 max
- [claimed-docs] https://docs.smooth.sh/quickstart.md“task = smooth_client.run("Go to google flights and find the cheapest flight from London to Paris today")”
- [claimed-docs] https://docs.smooth.sh/api-reference/introduction.md“The Smooth API enables programmatic browser automation through REST endpoints. You can run AI-powered tasks, create interactive browser sessions, and extend agent capabilities with custom tools.”
- [claimed-docs] https://docs.smooth.sh/methods/custom-tools.md“Custom tools allow you to give Smooth any arbitrary function as a tool.”
- [claimed-docs] https://docs.smooth.sh/methods/custom-tools.md“Custom tools allow you to give Smooth any arbitrary function as a tool. This is similar to MCP (Model Context Protocol) but without having to deal with servers or additional infrastructure.”
- [claimed-docs] https://docs.smooth.sh/api-reference/sessions.md“Sessions allow you to maintain a persistent browser instance and perform multiple actions sequentially. This is useful for complex workflows like logging in, navigating, and extracting data across multiple pages.”
- [claimed-docs] https://docs.smooth.sh/api-reference/custom-tools.md“Custom tools allow you to extend the agent's capabilities by registering functions that it can call during execution. When the agent needs to perform an action that your tool provides, it will pause and wait for you to execute the tool and return the result.”
- [probe] https://docs.smooth.sh/openapi.json“PROBE openapi: all candidate paths 404 (https://docs.smooth.sh/openapi.json, https://docs.smooth.sh/swagger.json, https://docs.smooth.sh/api/openapi.json, https://docs.smooth.sh/.well-known/openapi.json)”
- [github] https://github.com/circlemind-ai/smooth-sdk“The Smooth CLI is a browser for AI agents, enabling tools like Claude Code to navigate the web quickly, cheaply, and reliably.”
Subscribe to events via webhooksweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
- [claimed-docs] https://docs.smooth.sh/api-reference/polling.md“The API uses polling rather than webhooks or WebSockets for several reasons: Simplicity - No need to set up webhook endpoints or maintain WebSocket connections”
Agent-ready = 79.2 ÷ 210 × 100 = 37.7
API quality0.0/100×0.20 of the PA blend
The programmable surface once an agent is there — machine-readable spec, interactive docs, sandbox, versioning discipline.
Explore an interactive API reference with runnable examplesweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
- [claimed-docs] https://docs.smooth.sh/api-reference/introduction.md“The Smooth API enables programmatic browser automation through REST endpoints. You can run AI-powered tasks, create interactive browser sessions, and extend agent capabilities with custom tools.”
- [claimed-docs] https://docs.smooth.sh/api-reference/sessions.md“Sessions allow you to maintain a persistent browser instance and perform multiple actions sequentially. This is useful for complex workflows like logging in, navigating, and extracting data across multiple pages.”
- [claimed-docs] https://docs.smooth.sh/api-reference/task/list-tasks.md“List all tasks for the authenticated user.”
- [probe] https://docs.smooth.sh/openapi.json“PROBE openapi: all candidate paths 404 (https://docs.smooth.sh/openapi.json, https://docs.smooth.sh/swagger.json, https://docs.smooth.sh/api/openapi.json, https://docs.smooth.sh/.well-known/openapi.json)”
Download a machine-readable API spec (OpenAPI or equivalent)weight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
- [probe] https://docs.smooth.sh/openapi.json“PROBE openapi: all candidate paths 404 (https://docs.smooth.sh/openapi.json, https://docs.smooth.sh/swagger.json, https://docs.smooth.sh/api/openapi.json, https://docs.smooth.sh/.well-known/openapi.json)”
- [claimed-docs] https://docs.smooth.sh/api-reference/introduction.md“The Smooth API enables programmatic browser automation through REST endpoints. You can run AI-powered tasks, create interactive browser sessions, and extend agent capabilities with custom tools.”
- [claimed-docs] https://docs.smooth.sh/api-reference/task/list-tasks.md“List all tasks for the authenticated user.”
Test against a sandbox environment without touching production dataweight 1
1 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 10 max
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Rely on versioned APIs with a documented deprecation policyweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
- [probe] https://docs.smooth.sh/openapi.json“PROBE openapi: all candidate paths 404 (https://docs.smooth.sh/openapi.json, https://docs.smooth.sh/swagger.json, https://docs.smooth.sh/api/openapi.json, https://docs.smooth.sh/.well-known/openapi.json)”
API quality = 0.0 ÷ 70 × 100 = 0.0
Openness6.0/100×0.20 of the PA blend
Can you leave, inspect, or self-host — data export, open source, portability.
Do everything through the API that I can do in the UIweight 2
2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max
- [claimed-docs] https://docs.smooth.sh/api-reference/introduction.md“The Smooth API enables programmatic browser automation through REST endpoints. You can run AI-powered tasks, create interactive browser sessions, and extend agent capabilities with custom tools.”
- [claimed-docs] https://docs.smooth.sh/cli/features/live-view.md“Every session comes with a live view URL where you can watch your agent browse in real-time. You can also take over and interact with the browser yourself.”
- [claimed-docs] https://docs.smooth.sh/api-reference/sessions.md“Sessions allow you to maintain a persistent browser instance and perform multiple actions sequentially. This is useful for complex workflows like logging in, navigating, and extracting data across multiple pages.”
- [claimed-docs] https://docs.smooth.sh/api-reference/event/send-event.md“Send an event to a running task. This is used for: - **Session actions**: `run_task`, `goto`, `extract`, `evaluate_js`, `close`”
- [claimed-docs] https://docs.smooth.sh/cli/other-agents.md“Smooth CLI works with any agent that can run CLI commands.”
Export all of my data in open formats and leaveweight 3
3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max
- [claimed-docs] https://docs.smooth.sh/features/zero-data-retention.md“Zero Data Retention is an enterprise feature that provides enhanced data privacy by allowing you to delete all data associated with completed tasks.”
- [claimed-docs] https://docs.smooth.sh/api-reference/task/list-tasks.md“List all tasks for the authenticated user.”
Read the product's source under an open licenseweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
- [github] https://github.com/circlemind-ai/smooth-sdk“The Smooth CLI is a browser for AI agents, enabling tools like Claude Code to navigate the web quickly, cheaply, and reliably.”
- [community] https://hn.algolia.com/api/v1/items/46901233“I'm unwilling to send my data to a 3rd party that is so new on the scene... Make it self-hostable, the conversation can change”
- [community] https://hn.algolia.com/api/v1/items/46901233“Way too expensive, I'll wait for a free/open source browser optimized to be used by agents.”
Self-host the core productweight 3
3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max
- [community] https://hn.algolia.com/api/v1/items/46901233“I'm unwilling to send my data to a 3rd party that is so new on the scene... Make it self-hostable, the conversation can change”
- [community] https://hn.algolia.com/api/v1/items/46901233“Way too expensive, I'll wait for a free/open source browser optimized to be used by agents.”
- [claimed-docs] https://docs.smooth.sh/api-reference/introduction.md“The Smooth API enables programmatic browser automation through REST endpoints. You can run AI-powered tasks, create interactive browser sessions, and extend agent capabilities with custom tools.”
Openness = 6.0 ÷ 100 × 100 = 6.0
Built-in AI61.4/100×0.15 of the PA blend
Inside-out: how agentic the product itself is for its users — built-in assistants, autonomous features.
Get AI-generated insights and suggestions from my data inside the productweight 2
n/a — not applicable to this product: excluded from numerator and denominator
- [github] https://github.com/circlemind-ai/smooth-sdk“The Smooth CLI is a browser for AI agents, enabling tools like Claude Code to navigate the web quickly, cheaply, and reliably.”
- [claimed-docs] https://docs.smooth.sh/cli/overview.md“Give your AI agent a browser that actually works”
- [claimed-docs] https://docs.smooth.sh/methods/session-extract.md“Extract structured data from the current page by providing a schema.”
Set up automations that run autonomously in the backgroundweight 2
2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max
- [claimed-docs] https://docs.smooth.sh/quickstart.md“task = smooth_client.run("Go to google flights and find the cheapest flight from London to Paris today")”
- [claimed-docs] https://docs.smooth.sh/features/live-share.md“When running a task, you will receive a `live_url`, which can be used to view the agent actions live.”
- [claimed-docs] https://docs.smooth.sh/features/persistent-sessions.md“Log in once, then reuse that authentication for future tasks.”
- [claimed-docs] https://docs.smooth.sh/api-reference/polling.md“The API uses polling rather than webhooks or WebSockets for several reasons: Simplicity - No need to set up webhook endpoints or maintain WebSocket connections”
- [claimed-docs] https://docs.smooth.sh/cli/claude-code.md“Ask Claude to do something on the web. It will use Smooth automatically.”
- [claimed-docs] https://docs.smooth.sh/api-reference/task/list-tasks.md“List all tasks for the authenticated user.”
Delegate tasks to a built-in AI assistant inside the productweight 3
3 (weight) × 7 (quality) × 1.0 (full) = 21.0 of 30 max
- [claimed-docs] https://docs.smooth.sh/quickstart.md“task = smooth_client.run("Go to google flights and find the cheapest flight from London to Paris today")”
- [claimed-docs] https://docs.smooth.sh/methods/overview.md“Session Workflow — Multi-step execution where you can orchestrate smaller tasks, navigate to URLs, and extract data within a persistent browser session.”
- [claimed-docs] https://docs.smooth.sh/features/live-share.md“When running a task, you will receive a `live_url`, which can be used to view the agent actions live.”
- [claimed-docs] https://docs.smooth.sh/cli/claude-code.md“Ask Claude to do something on the web. It will use Smooth automatically.”
- [github] https://github.com/circlemind-ai/smooth-sdk“The Smooth CLI is a browser for AI agents, enabling tools like Claude Code to navigate the web quickly, cheaply, and reliably.”
- [community] https://hn.algolia.com/api/v1/items/45027597“I just wrote a complex prompt and it did a good job. How do you do evals or testing of your project?”
- [community] https://hn.algolia.com/api/v1/items/46901233“are your evals / comparisons publicly/3rd party reproducible? If it's 'trust me, I did a fair comparison', that's not going to fly today.”
Operate the product with natural-language commandsweight 2
2 (weight) × 8 (quality) × 1.0 (full) = 16.0 of 20 max
- [claimed-docs] https://docs.smooth.sh/quickstart.md“task = smooth_client.run("Go to google flights and find the cheapest flight from London to Paris today")”
- [claimed-docs] https://docs.smooth.sh/cli/claude-code.md“Ask Claude to do something on the web. It will use Smooth automatically.”
- [claimed-docs] https://docs.smooth.sh/cli/openclaw.md“Ask your agent to do something on the web. It will use Smooth automatically.”
- [claimed-docs] https://docs.smooth.sh/cli/other-agents.md“Smooth CLI works with any agent that can run CLI commands.”
- [claimed-docs] https://docs.smooth.sh/cli/overview.md“Give your AI agent a browser that actually works”
- [github] https://github.com/circlemind-ai/smooth-sdk“The Smooth CLI is a browser for AI agents, enabling tools like Claude Code to navigate the web quickly, cheaply, and reliably.”
Built-in AI = 43.0 ÷ 70 × 100 = 61.4
Automation6.9/100×0.15 of the PA blend
Depth of automation primitives — rules, scheduling, bulk operations, webhooks.
Perform bulk operations across many items at onceweight 2
2 (weight) × 4 (quality) × 0.6 (partial) = 4.8 of 20 max
- [claimed-docs] https://docs.smooth.sh/methods/overview.md“Session Workflow — Multi-step execution where you can orchestrate smaller tasks, navigate to URLs, and extract data within a persistent browser session.”
- [claimed-docs] https://docs.smooth.sh/methods/session.md“Browser sessions allow you to run multiple sequential tasks in a single browser instance. This enables you to break complex workflows into smaller, more reliable steps.”
- [claimed-docs] https://docs.smooth.sh/api-reference/sessions.md“Sessions allow you to maintain a persistent browser instance and perform multiple actions sequentially. This is useful for complex workflows like logging in, navigating, and extracting data across multiple pages.”
- [claimed-docs] https://docs.smooth.sh/api-reference/task/list-tasks.md“List all tasks for the authenticated user.”
- [claimed-docs] https://docs.smooth.sh/api-reference/task/cancel-task.md“Cancel a running task by its ID.”
Define rules that trigger actions automatically on eventsweight 3
3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max
- [claimed-docs] https://docs.smooth.sh/api-reference/polling.md“The API uses polling rather than webhooks or WebSockets for several reasons: Simplicity - No need to set up webhook endpoints or maintain WebSocket connections”
- [claimed-docs] https://docs.smooth.sh/cli/use-cases/monitoring.md“Your agent can check websites on demand, monitor for changes, or gather status updates from various sources.”
- [claimed-docs] https://docs.smooth.sh/api-reference/event/send-event.md“Send an event to a running task. This is used for: - **Session actions**: `run_task`, `goto`, `extract`, `evaluate_js`, `close`”
Schedule recurring jobs or workflowsweight 2
2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Version, review, and roll back my automationsweight 1
n/a — not applicable to this product: excluded from numerator and denominator
no evidence cited — the verdict rests on absence of evidence, re-checked on refresh
Automation = 4.8 ÷ 70 × 100 = 6.9