skyvern
用 AI 视觉大模型驱动浏览器自动化,替代传统 RPA 的脆弱 XPath 方案,支持任意网站通用操
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
用 AI 视觉大模型驱动浏览器自动化,替代传统 RPA 的脆弱 XPath 方案,支持任意网站通用操
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

图1:Skyvern 官方标识
你是一名保险公司的数据录入员。每天早上,你都要登录 Geico 保险官网,手动填写表格、查询保单、核对信息——机械重复、枯燥乏味,而且稍不留神就会填错字段。传统的 RPA(机器人流程自动化)工具虽然能帮你省点力气,但一旦网页改版,脚本就失效了,工程师得花一整天重新调试 XPath。
Skyvern 想解决的就是这个问题——它让 AI 当你的浏览器"驾驶员",用视觉大模型理解网页长什么样,再用一系列 AI Agent 自动规划并执行操作。你不需要写任何 XPath,也不用担心网页改版——只要告诉 AI 你想做什么,它会自己看、自己点、自己填。
Skyvern 由 Skyvern AI 公司开发并开源,最初是作为一个实验性项目,探索如何将 LLM 与浏览器自动化深度结合。它的灵感来自 BabyAGI 和 AutoGPT 等任务驱动型自主 Agent 设计,但 Skyvern 额外赋予了 Agent 与真实网站交互的能力——通过 Playwright 控制真实浏览器。
目前该项目已获得超过 21,700 颗 GitHub Stars,拥有活跃的 Discord 社区和完整的商业文档网站(skyvern.com)。除了开源代码外,Skyvern AI 还提供托管云服务,形成了"开源社区 + 商业变现"的商业模式。

图2:Skyvern 2.0 系统架构图
传统的浏览器自动化依赖 DOM 解析和 XPath 定位——网页结构一变,自动化脚本就瘫痪。Skyvern 的核心创新在于用视觉大模型(Vision LLM)代替 XPath:
这套机制使得 Skyvern 可以在从未见过的网页上工作,真正实现"通用浏览器自动化"。
Skyvern 采用多 Agent 协作架构,而非单一 Agent 包办一切。系统内有多个专业化 Agent:
这些 Agent 通过消息队列协作,形成一个分工明确的"AI 蜂群"。
Skyvern 支持从技术到非技术用户的完整使用层级:
| 模式 | 适用用户 | 说明 |
|---|---|---|
| Python SDK | 开发者 | 提供 Playwright 兼容 SDK,代码驱动自动化 |
| REST API | 集成方 | 提供完整 HTTP API,可接入任何系统 |
| No-Code 工作流编辑器 | 业务人员 | Web UI 拖拽编排自动化流程 |
Skyvern 不绑定特定 AI 提供商,支持自由切换:
这种灵活性让用户根据成本、性能、合规需求自由选择 AI 引擎。
pip install skyvern
需要 Python 3.11 以上,并配置 LLM API Key(.env 文件):
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
然后编写 Python 脚本:
from skyvern import Skyvern
sv = Skyvern(api_key="...")
task = sv.create_task(
url="https://www.example.com/form",
goal="填写表单:姓名为张三,电话为13800138000"
)
result = sv.wait_for_completion(task['task_id'])
print(result)
git clone https://github.com/Skyvern-AI/skyvern
cd skyvern
cp .env.example .env
# 编辑 .env 填入 API Key
docker compose up -d
访问 http://localhost:8080 即可打开 Web UI,在浏览器中拖拽编排自动化工作流。

图3:Skyvern 工作流录制示例(Geico 保单自动化)
skyvern/ 核心 Python 包:core(任务调度)、forge(Agent 框架)、webeye(Playwright 封装)、cli、client、services、schemas skyvern-frontend:React Web UI skyvern-ts:TypeScript SDK kubernetes-deployment:K8s 部署清单 docker-compose.yml
| 层级 | 技术选型 |
|---|---|
| 后端框架 | FastAPI + Starlette |
| 数据层 | PostgreSQL + Alembic ORM 迁移 |
| 浏览器控制 | Playwright |
| 异步处理 | asyncio + aiohttp |
| 日志/追踪 | OpenTelemetry + structlog |
| LLM 中转 | LiteLLM(统一接口) |
| 前端 | React(skyvern-frontend) |
| SDK | Python + TypeScript 双版本 |
| 容器化 | Docker + Kubernetes |
项目代码质量较高:配置了 .flake8、.yamlfmt、mypy.ini 进行静态检查,pytest.ini + conftest.py 提供完整测试框架,pre-commit 钩子规范提交格式。文档方面有独立的 docs/ 目录、API 文档(Fern)和 SECURITY 政策。
尽管 Skyvern 功能强大,但实际使用中仍有一些局限:
成本考量:每次自动化任务都需要调用 LLM API,复杂任务可能消耗大量 token。官方建议生产环境使用 Claude Haiku 等低成本模型处理简单步骤。
速度瓶颈:AI 决策需要时间,一个简单的网页操作可能需要几秒到几十秒,远慢于传统 RPA 的毫秒级响应。
复杂交互有限:对于需要 JavaScript 深度交互(如 WebSocket 实时数据、复杂动画)的网站,Skyvern 的表现仍不稳定。
API Key 依赖:必须拥有 LLM 提供商的 API Key(且需要付费),不支持完全离线的本地化部署(除非自建 LLM 服务)。
维护成本:虽然比传统 RPA 抗网页改版能力强,但视觉模型的 prompt 仍需根据不同网站特性调优。
Skyvern 代表了**"AI + 浏览器自动化"** 这一新兴赛道的成熟化。其核心价值在于将 AI 的理解能力注入传统 RPA,解决了 RPA 最头疼的"脆弱性"问题。
从行业趋势看:
Skyvern 的开源策略也值得关注:通过开源建立开发者生态,通过云服务实现商业变现,形成健康的社区-商业双轮驱动。

图4:Skyvern 深色模式标识