Skyvern:AI浏览器自动化Agent安装与使用指南
官方信息
| 项目名称 | Skyvern |
| 仓库地址 | https://github.com/Skyvern-AI/skyvern |
| 官方文档 | https://www.skyvern.com/docs |
| 最新更新 | 2026-10-27 |
| 项目定位 | 用 LLM + 视觉模型自动操作浏览器,替代脆弱的 XPath RPA 脚本 |
| 开源协议 | AGPL-3.0 |
项目背景
传统浏览器自动化(Selenium、Playwright、Puppeteer、RPA)都靠写死 XPath 和 CSS 选择器:网站一改版,按钮 class 变了、表单顺序调了,脚本就崩了。维护这些脚本的成本极高,尤其是面对电商、政务、保险这类频繁改版的网站。
Skyvern 换了个思路:它不读 DOM,而是像人一样截图看页面,把截图喂给多模态大模型(GPT-4o、Claude、Gemini),让模型判断"这个按钮是登录、那个输入框填用户名",然后再调用 Playwright 去点去填。网站改版了?模型重新看一眼就行,脚本一行不用改。
项目在 GitHub 上收获 13k+ Star,背后有 YC 投资,同时提供商业云服务。开源版支持任务(Task)、工作流(Workflow)、2FA 登录、文件下载、表单填写、数据抽取、实时浏览器直播观看、人工接管(遇到验证码时人来点一下)。它被广泛用于自动比价、自动填表、批量抓数据、采购流程自动化等场景。
核心特性
- 视觉驱动:每一步都截图让 LLM 决策,不依赖脆弱的 XPath。
- 自然语言指令:告诉它"去 7-11 网站下载上个月的发票",它自己拆解执行。
- 工作流编排:可视化串联导航、抽取、循环、文件下载、邮件发送等节点。
- 2FA 支持:TOTP、Google Authenticator、Bitwarden/1Password/LastPass 集成。
- 实时直播:通过 VNC 实时看浏览器在干什么,可随时接管。
- 凭据保险库:加密存储网站账号密码,按名字在工作流里引用。
- 多 LLM 兼容:OpenAI、Anthropic、Gemini、Azure、Bedrock、Ollama、OpenRouter、Groq。
- REST API + Python/TS SDK + Webhook + MCP:可嵌入任何系统。
环境要求
- Python 3.11 - 3.14(pip 方式)或 Docker(推荐)。
- 至少一个支持视觉的 LLM API Key(强烈推荐 GPT-4o / Claude Sonnet / Gemini 视觉版)。
- 2 核 4G 起步;并发任务多了再加内存(每个任务一个 Chromium 实例)。
- Docker Compose v2。
详细部署步骤
方式一:Docker Compose(推荐,带 Web UI)
git clone https://github.com/Skyvern-AI/skyvern.git
cd skyvern
cp .env.example .env
cp skyvern-frontend/.env.example skyvern-frontend/.env编辑 .env,至少填一个 LLM Key:
# 用 OpenAI
OPENAI_API_KEY=sk-你的key
LLM_KEY=GPT4o
# 或者用 Anthropic
# ANTHROPIC_API_KEY=sk-ant-xxx
# LLM_KEY=CLAUDE_SONNET
# 或者用本地 Ollama(需要视觉模型)
# ENABLE_OLLAMA=true
# LLM_KEY=OLLAMA
# OLLAMA_SERVER_URL=http://host.docker.internal:11434
# OLLAMA_MODEL=qwen2.5vl:7b
# OLLAMA_SUPPORTS_VISION=true编辑 skyvern-frontend/.env,把 VITE_SKYVERN_API_KEY 留空:
VITE_SKYVERN_API_KEY=注意:不要保留 YOUR_API_KEY 占位符,否则前端会拿这个假 key 发请求导致全部失败。
启动:
docker compose up -d
docker compose ps
# 等 postgres 和 skyvern 都显示 healthy打开 http://服务器IP:8080。你的本地 API Key 写在 .skyvern/credentials.toml 的 cred 字段里。
方式二:pip 安装(无 UI,纯 API)
pip install "skyvern[server]"
skyvern quickstart --install-type server向导会问你用哪个 LLM、Key 是多少,自动装 Chromium、初始化数据库、生成 API Key,然后问你要不要启动服务。之后随时启动:
skyvern run server # API 在 http://localhost:8000关键注意事项
- DATABASE_STRING 不要在 .env 里指向 localhost:容器里 localhost 是自己,compose 文件里已经配好了,删掉 .env 里那行。
- Ollama 在宿主机:Linux 用
http://172.17.0.1:11434,macOS/Windows 用http://host.docker.internal:11434。 - 不要裸奔暴露到公网:开源版没有登录系统,必须前面套 Nginx/Caddy 加 Basic Auth。
- 首次启动要 1-2 分钟跑数据库迁移,看到
Application startup complete再用。
使用方法示例
在 Web UI 里新建 Task,填:
- URL:
https://news.ycombinator.com - 导航目标:找出首页第一条新闻的标题和链接。
- 数据抽取目标:JSON 格式输出
{"title": "...", "url": "..."}。
点 Run,右侧会实时看到 Chromium 截图流,每一步都记录了模型的决策。
用 API 调:
curl -X POST http://localhost:8000/api/v1/tasks \
-H "Content-Type: application/json" \
-H "x-api-key: 你的cred" \
-d '{
"url": "https://www.google.com",
"navigation_goal": "搜索 open source AI agents 并返回第一条结果",
"data_extraction_goal": "JSON: {title, url, snippet}"
}'常见问题(FAQ)
Q1:为什么模型操作慢?
A:每一步都要截图 + 调视觉模型,一次任务可能调 10-30 次 LLM,成本和耗时都比传统 RPA 高。建议用便宜的视觉模型,或在 workflow 里把固定步骤写成 Playwright 代码块。
Q2:遇到验证码怎么办?
A:实时直播页面点"Take Control"人工接管点掉验证码,Skyvern 会接着继续。商业云版自带验证码解决。
Q3:能登录需要 2FA 的网站吗?
A:可以,在 Credentials 里存 TOTP secret,工作流里引用即可自动生成动态码。
Q4:AGPL 协议能商用吗?
A:AGPL 要求你对外提供网络服务时也开源修改后的代码;如果只是内部用、不分发,没问题。要 SaaS 化建议买商业版。
跳转链接
- GitHub 仓库:https://github.com/Skyvern-AI/skyvern
- 官方文档:自托管文档
- 商业云版:https://app.skyvern.com/
- PyPI:skyvern