> ## Documentation Index
> Fetch the complete documentation index at: https://docs.surfacearea.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Platform overview

> What Surface Area does, the pieces it is made of, the ways you can drive it, and where to start for the job you have.

Surface Area lets you test an agent against a sealed copy of the systems it works with, before it touches the real ones. You build a **world** that behaves like a vendor's API and data, give it **scenarios** to attempt, run your agent through them, and read a graded pass rate you can compare from one version to the next.

## How the pieces fit

<Steps>
  <Step title="Build a world">
    A sealed, hosted copy of a system: its data model, routes, tools and rows. Start from a shipped vendor template, an OpenAPI spec, your own API, or a contract you write.
  </Step>

  <Step title="Add scenarios">
    Each scenario is a task for the agent plus the checks that decide whether it passed.
  </Step>

  <Step title="Run your agent">
    Open a session per scenario and point your agent at the world's URL and token instead of the vendor's. Nothing it does leaves the world.
  </Step>

  <Step title="Grade and compare">
    Every attempt is graded. A run's pass rate is pinned to one world version and one model, so two runs differ only by what you changed.
  </Step>

  <Step title="Gate a release">
    A gate turns the pass rate into a merge or ship decision, in CI or on the **Releases** page.
  </Step>
</Steps>

The [Glossary](/glossary) defines these words in one page.

## What the platform offers

| Offering | What it does for you | Start here |
| - | - | - |
| Worlds | Hosted, versioned replicas of the APIs and data your agent uses | [What a world is](/worlds) |
| Mock any API | Turn a vendor's OpenAPI spec or your own API into a world | [Mock any vendor API](/worlds/custom-connections) |
| World data | Seed a world from files, a live connection, or your agent's real tool calls | [Put data in a world](/worlds/data) |
| Scenarios and benchmarks | Task suites graded by checks over the world's end state, run many times per model | [Benchmarks on worlds](/worlds/benchmarks) |
| Evals | LLM judges, deterministic checks and human review, on rollouts or production traces | [Evaluation](/evaluation) |
| Tracing | Capture what your agent did in production; those sessions seed worlds and evals | [What is tracing](/tracing) |
| Replay | Re-run real sessions as regression tests | [Agent Replay](/evaluation/agent-replay) |
| Hooks | Rules around every tool call: deny, rewrite, record, swap real people for personas | [Hooks for any agent](/hooks) |
| Computer use | Worlds with a UI your agent drives in a browser | [Native computer use](/worlds/computer-use) |
| CI gates | Check every pull request against a world before it merges | [Evals in CI/CD](/use-cases/evals-in-ci) |

## Ways to drive it

| Interface | Best for | Setup |
| - | - | - |
| Your coding agent | Letting Claude Code, Cursor or Codex do the building, with the platform's guides installed | [Start with your coding agent](/get-started/agent-prompts) |
| The `gateway` CLI | Every action from a terminal or a CI job | [Installation](/get-started/installation) |
| MCP server | The same actions as tools inside any MCP client | [Set up the MCP server](/mcp/setup) |
| Docs MCP server | Letting any agent search and read these docs at `https://docs.surfacearea.ai/mcp` | [Connect the docs](/get-started/agent-prompts#connect-the-docs) |
| Python and TypeScript SDKs | Tracing, sessions and runs from your own code | [Python SDK](/sdk), [TypeScript SDK](/sdk-ts) |
| Dashboard | Reading results, browsing worlds and sessions, managing keys | [Dashboard basics](/get-started/dashboard) |

## Pick your starting point

| You want to | Do this |
| - | - |
| See it work in ten minutes | [Quickstart](/get-started/quickstart): a world from a template, one session, one grade |
| Have an agent set things up for you | Install the CLI, then paste a prompt from [Start with your coding agent](/get-started/agent-prompts) |
| Test an agent that calls a vendor you use | [Getting started with worlds](/worlds/getting-started) |
| Test against your own product's API | [Mock any vendor API](/worlds/custom-connections) |
| Build a benchmark | [Benchmarks on worlds](/worlds/benchmarks) |
| Grade production traffic | [Instrument an agent](/tracing/setup), then [Evaluation](/evaluation) |
| Block regressions before merge | [Evals in CI/CD](/use-cases/evals-in-ci) |
| Give each of your customers their own simulation | [Simulations from real data](/use-cases/sims-from-real-data) |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.