在互联网技术飞速发展的当下,网页已成为信息交互和业务办理的核心载体,从电商采购、保险报价到政务表单填写,大量工作都需要在浏览器中完成。不过,传统的浏览器自动化工具普遍存在适配性差的痛点,它们依靠预先定义的元素定位规则开展工作,一旦网站进行版本迭代或布局调整,自动化流程就会中断,企业往往需要组建专门的技术团队维护脚本,时间和人力成本居高不下。此外,这类工具难以实现跨网站的统一自动化逻辑,对于需要在多个平台执行一样任务的场景,只能逐个编写脚本,效率极低。
Skyvern 作为新一代 AI 驱动的浏览器自动化开源项目,其核心价值在于革新了自动化的底层逻辑。它将大语言模型的推理能力与计算机视觉技术相结合,让工具能够像人一样 “看懂” 网页并自主规划操作步骤,而非机械执行预设指令。这不仅解决了传统工具的易失效性难题,还能让同一套工作流在不同网站上复用,大幅降低了自动化的门槛。无论是个人开发者处理日常网页任务,还是企业级的大规模机器人流程自动化需求,Skyvern 都能提供稳定、灵活的解决方案,推动网页自动化从定制化走向通用化。

简介
Skyvern 是由 Skyvern-AI 团队开发的开源浏览器自动化项目,项目代码托管于 GitHub(
https://github.com/Skyvern-AI/skyvern),核心逻辑采用 AGPL-3.0 开源协议授权,而托管式云服务中的反机器人检测等高级功能则为商业服务范畴。该项目支持多种主流 LLM 模型,包括 OpenAI 的 gpt4-turbo、gpt-4o,Anthropic 的 Claude 3 系列、Claude 3.5 Sonnet,以及 Azure OpenAI、AWS Bedrock、Gemini、Ollama 本地模型等,用户可根据需求灵活选择。
Skyvern 主要用于自动化各类浏览器端工作流,它以任务驱动的自主智能体架构为基础,融合 Playwright 等浏览器自动化库,通过多智能体协作完成网页理解、操作规划与执行、结果验证的全流程。相较于传统工具,Skyvern 具备三大核心优势:一是无需定制化代码,可对从未接触过的网站开展自动化操作,通过视觉 LLM 将网页元素映射为操作指令;二是抗页面布局变更能力强,摆脱了对 XPath 等固定选择器的依赖;三是支持跨网站复用工作流,能通过 LLM 推理完成不同平台的一样任务。
Skyvern 性能优秀,在 WebBench 基准测试中取得了 64.4% 的准确率,达到行业领先水平;尤其在写入类任务(表单填写、登录、文件下载等 RPA 相关场景)中表现突出,是该类任务下性能最优的自动化工具。实则际应用场景也十分广泛,涵盖了企业和个人的多类需求:在企业侧,可实现多平台发票批量下载、制造业物料采购自动化、多渠道保险报价获取、跨平台竞品分析;在个人和小团队侧,能完成求职申请流程自动化、政务网站表单填写、社交媒体内容检索等任务,同时还支持多语言场景。

使用
Skyvern 的使用可分为本地部署和云端服务两种模式,其中本地部署适合开发者调试和小规模使用,云端服务则适配企业级的大规模并行任务。
在安装 Skyvern 之前,需先配置好基础运行环境,安装 Python 3.11.x,NodeJS 及 NPM,Windows 系统额外依赖:需安装 Rust,以及配备 C++ 开发工具和 Windows SDK 的 VS Code。若选择 Docker Compose 部署,还需提前安装 Docker Desktop。
打开终端,执行以下命令完成工具的基础安装:
pip install skyvern
首次使用需执行初始化命令,完成数据库配置和迁移等前置工作:
skyvern quickstart
初始化完成后,执行以下命令启动 Skyvern 服务和可视化 UI:
skyvern run all
随后在浏览器中访问http://localhost:8080,即可通过可视化界面创建和执行任务,例如 “获取 HackerNews 今日置顶帖子”。
若习惯用代码调用,可编写异步代码实现任务执行,示例如下:
from skyvern import Skyvern
skyvern = Skyvern()
task = await skyvern.run_task(prompt="Find the top post on hackernews today")
print(task)
执行后,Skyvern 会自动启动浏览器完成任务,任务记录可在
http://localhost:8080/history查看。
如果使用 Docker Compose 部署,第一克隆 Skyvern 仓库并进入根目录,执行以下命令生成.env 文件:
skyvern init llm
打开 docker-compose.yml 文件,填写 LLM 服务商的 API 密钥;若需远程部署,需配置 UI 容器的服务器 IP;然后启动 Docker 容器:
docker compose up -d
访问http://localhost:8080即可使用 UI,使用方法同本地部署。
Skyvern 以服务形式独立存在,可以使用一些命令行命令进行运维:
# 单独启动服务器
skyvern run server
# 单独启动UI
skyvern run ui
# 查看服务状态
skyvern status
# 停止所有服务
skyvern stop all
Skyvern 支持获取结构化输出,通过data_extraction_schema参数指定输出格式,确保任务结果符合预设结构,示例如下:
from skyvern import Skyvern
skyvern = Skyvern()
task = await skyvern.run_task(
prompt="Find the top post on hackernews today",
data_extraction_schema={
"type": "object",
"properties": {
"title": {"type": "string", "description": "The title of the top post"},
"url": {"type": "string", "description": "The URL of the top post"},
"points": {"type": "integer", "description": "Number of points the post has received"}
}
}
)
print(task)
Skyvern 支持调用自定义 Chrome 浏览器,若需使用本地 Chrome 的用户数据,可指定浏览器路径,示例代码如下:
from skyvern import Skyvern
browser_path = "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
skyvern = Skyvern(
base_url="http://localhost:8000",
api_key="YOUR_API_KEY",
browser_path=browser_path,
)
task = await skyvern.run_task(prompt="Find the top post on hackernews today")

总结
Skyvern 作为 AI 驱动的浏览器自动化工具,其功能体系兼具创新性和实用性。从核心能力来看,它构建了多智能体协作架构,能通过规划器拆解任务、视觉 LLM 识别网页元素、执行器完成操作、验证器确认结果,形成了闭环的自动化流程;同时支持任务和工作流两种执行模式,任务可实现单一网页目标,工作流则能串联多任务完成复杂需求,例如 “筛选并下载指定日期后的所有发票”。此外,它还具备表单填写、数据提取、文件下载、2FA 认证、密码管理器集成等丰富功能,可与各种工具打通,实现跨应用的流程联动。
从应用价值层面,Skyvern 彻底改变了浏览器自动化的实施逻辑。对于技术团队而言,它摆脱了传统工具对固定选择器的依赖,无需为每个网站编写定制脚本,大幅降低了自动化的开发和维护成本;对于企业而言,其跨网站的工作流复用能力可支撑大规模的业务场景,例如同时在多个保险平台获取报价、在多电商平台完成竞品价格采集,提升了业务拓展的效率。对于个人开发者,Skyvern 的低门槛特性让非专业人员也能实现网页任务自动化,解决日常工作中的重复操作难题。Skyvern 有望成为浏览器自动化领域的重大工具,推动更多行业实现网页端业务的智能化提效。
操控一般。