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

# Skyvern

> 基于 Skyvern SDK 的浏览器自动化代理

Skyvern 是基于 Skyvern SDK 的浏览器自动化代理，支持多种执行引擎（`skyvern_v1`、`skyvern_v2`、`openai-cua`、`anthropic-cua`、`ui-tars`）以及多种浏览器后端（`local`、`cdp`、`lexmount`、`skyvern-cloud`）。

## 安装

```bash theme={null}
# 安装核心依赖并注册 bubench CLI
uv sync
```

<Note>
  skyvern 与 browser-use 的 extra 依赖冲突，建议使用独立 venv（`config.yaml` 默认 skyvern 使用 `.venvs/skyvern`，browser-use 使用 `.venvs/browser_use`）。
  `bubench run` 会在首次运行时自动创建该 venv 并安装 skyvern extra。
</Note>

使用 `bubench` 前请先激活 `.venv`（或使用 `uv run bubench ...`）。

## 配置

在根目录 `config.yaml` 的 `agents.skyvern` 下配置：

```yaml theme={null}
agents:
  skyvern:
    active_model: gemini        # 当前使用的模型配置名
    models:
      gemini:
        enable_openai_compatible: true
        model_id: gemini-3-flash-preview
        max_tokens: 16000
        temperature: 0.0
        supports_vision: true
        api_key: $OPENAI_COMPATIBLE_API_KEY
    browser:
      browser_id: local
      headless: false
    defaults:
      engine: skyvern_v2
      max_steps: 25
      timeout: 600
      max_screenshot_scrolls: 5
      include_action_history_in_verification: true
      max_consecutive_repeats: 3
      max_action_occurrences: 5
```

敏感密钥（如 `OPENAI_COMPATIBLE_API_KEY`、`SKYVERN_API_KEY`）请放在根目录 `.env` 中。

### 引擎选项

| ENGINE          | 说明               |
| --------------- | ---------------- |
| `skyvern_v1`    | Skyvern v1 引擎    |
| `skyvern_v2`    | Skyvern v2 引擎    |
| `openai-cua`    | OpenAI CUA 引擎    |
| `anthropic-cua` | Anthropic CUA 引擎 |
| `ui-tars`       | UI-TARS 引擎       |

### 浏览器后端

| `browser_id`    | 说明                                        |
| --------------- | ----------------------------------------- |
| `local`         | 本地浏览器                                     |
| `cdp`           | 连接外部 CDP 浏览器（可配 `CDP_ADDRESS`）            |
| `lexmount`      | Lexmount 云浏览器（可配 `LEXMOUNT_BROWSER_MODE`） |
| `skyvern-cloud` | Skyvern 云浏览器                              |

### 常用参数

| 参数                                       | 说明                           | 示例值                          |
| ---------------------------------------- | ---------------------------- | ---------------------------- |
| `enable_openai_compatible`               | 启用 OpenAI-Compatible 运行模式    | `true`                       |
| `model_id`                               | LLM 模型名                      | `gemini-3-flash-preview`     |
| `api_key`                                | LLM API 密钥（推荐 `$ENV_VAR` 形式） | `$OPENAI_COMPATIBLE_API_KEY` |
| `base_url`                               | LLM API 地址                   | `$OPENAI_BASE_URL`           |
| `max_tokens`                             | 最大输出 tokens                  | `16000`                      |
| `temperature`                            | 温度                           | `0.0`                        |
| `supports_vision`                        | 模型是否支持视觉                     | `true`                       |
| `request_timeout`                        | LiteLLM 单次请求超时（秒）            | `600`                        |
| `headless`                               | 本地浏览器无头模式                    | `true` / `false`             |
| `timeout`                                | 任务超时（秒）                      | `600`                        |
| `max_steps`                              | 最大任务步数                       | `25`                         |
| `max_screenshot_scrolls`                 | 最大滚动截图次数                     | `5`                          |
| `include_action_history_in_verification` | 校验时包含动作历史                    | `true`                       |
| `max_consecutive_repeats`                | 最大连续重复次数                     | `3`                          |
| `max_action_occurrences`                 | 单动作最大出现次数                    | `5`                          |

<Note>
  **Key 改名（老 key 兼容）**

  per-model 配置下的 `openai_compatible_*` 前缀已去掉，与其他 agent 对齐（`model_id`、`api_key`、`base_url`、`max_tokens`、`temperature`、`supports_vision`、`request_timeout`）。老 key 仍然可用 —— 每个 key 在进程里会触发一次 `DeprecationWarning`，然后自动别名到新 key。传给 Skyvern 子进程的环境变量 `OPENAI_COMPATIBLE_*` 保持不变。
</Note>

<Note>
  **为什么没有 `browser_control`？**

  Skyvern 是完全托管的服务，何时使用 DOM 检查、何时使用视觉定位由 Skyvern 执行引擎内部决策（可通过 `execution_engine` 切换引擎）。基准测试层只通过 API 提交任务，不干预内部的交互策略。
</Note>

## 使用示例

### 基础运行

```bash theme={null}
bubench run \
  --agent skyvern \
  --data LexBench-Browser \
  --mode first_n \
  --count 3
```

### 运行全部任务

```bash theme={null}
bubench run \
  --agent skyvern \
  --data LexBench-Browser \
  --mode all \
  --skip-completed
```

## 评估

```bash theme={null}
# --model-id 填运行时使用的 model_id
bubench eval --agent skyvern --data LexBench-Browser --model-id gemini-3.1-pro-preview
```

## 支持的 Benchmarks

* ✅ LexBench-Browser
* ✅ Online-Mind2Web
* ✅ BrowseComp

## 相关链接

* [Skyvern GitHub 仓库](https://github.com/Skyvern-AI/Skyvern)
