news 2026/9/5 18:46:37

如何 3 步跑通 Skyvern CLI:从首次启动到工作流自动化的完整实用指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何 3 步跑通 Skyvern CLI:从首次启动到工作流自动化的完整实用指南

如何 3 步跑通 Skyvern CLI:从首次启动到工作流自动化的完整实用指南

【免费下载链接】skyvernAutomate browser based workflows with AI项目地址: https://gitcode.com/GitHub_Trending/sk/skyvern

想让浏览器自动化工作流定时跑、批量跑,又不想每次都打开网页界面点来点去?Skyvern 是一个用 AI 驱动浏览器操作的平台,能把"在网站上完成某件事"的描述变成可重复执行的工作流。而它的命令行工具 Skyvern CLI,让你一条skyvern quickstart就把服务拉起来,之后触发工作流、传参、看状态、停服务,全程只碰终端——对脚本、CI 和 AI Agent 都友好。

全局速览:最常用的 10 条命令速查表

先建立整体印象。下面是日常用得最多的命令,用到哪个查哪个:

命令作用什么时候用
skyvern quickstart一条命令完成环境初始化并启动服务首次部署
skyvern run server只启动 API 后端(默认 8000 端口)只要 API,不要界面
skyvern run all并行启动 API + UI需要网页界面调试
skyvern run ui只启动 UI(默认 8080 端口)后端已跑,补开界面
skyvern run dev后台启动 API + UI,立即释放终端不想占着终端窗口
skyvern stop all停掉 8000/8080/9090 上的全部服务干净地收工
skyvern run code 脚本.py运行 Python 脚本并注入参数写自动化脚本
skyvern workflow run --id <wpid>触发工作流,可--wait等结果脚本化批量执行
skyvern run mcp启动 MCP 服务器接入 Claude、Cursor 等 AI 工具
skyvern doctor/skyvern status检查安装健康度 / 服务是否在跑排错第一反应

所有命令的实现都在 skyvern/cli/ 目录里,遇到看不懂的参数,直接翻源码比查文档快。

3 步跑起来:从安装到打开界面

第 1 步:装好 Python 环境和 CLI

前提只有一个:Python 3.11 / 3.12 / 3.13。然后安装带服务端依赖的完整版:

pip install "skyvern[all]"

装完就有skyvern命令可用。如果你走 Docker Compose 路线(不想装 Python),则需要先启动 Docker,并在仓库目录下执行git clone https://gitcode.com/GitHub_Trending/sk/skyvern && cd skyvern

第 2 步:一条命令完成初始化

skyvern quickstart

它会交互式地帮你搞定:选择部署方式、配置 LLM Provider(写入 API key)、安装 Chromium 浏览器、初始化数据库,最后询问是否立刻启动服务。全程跟着提示走即可。

几个常用开关:

参数含义示例/默认值
--server-only只起后端,不起 UI默认带 UI
--no-postgres不起 Postgres 容器(默认走本地 SQLite~/.skyvern/data.db默认起 Postgres
--database-string连接已有的 Postgrespostgresql+psycopg://user:pass@host:5432/db
--skip-browser-install跳过 Chromium 安装默认安装
--docker-compose用 Docker Compose 全容器化部署需在仓库目录内

第 3 步:确认服务真的起来了 ✅

启动成功后按两个地址验证:

  • UI 界面:http://localhost:8080 —— 能看到工作流列表就说明前后端都通了
  • API 服务:http://localhost:8000 —— 能被访问说明后端活着

如果界面一直转圈,用docker compose logs -f(Docker 路线)或重跑skyvern doctor(pip 路线)看哪一步卡住了。

日常操作:按场景选命令

只起后端,不要网页界面

无头服务器上只暴露 API 时,用skyvern run server单独拉 API。注意它读取.env里的PORT配置,默认就是 8000。

端口 8080 被占用了怎么办

skyvern run ui启动前会检测端口。发现被占时它会询问是否杀掉占用进程;交互场景直接确认即可,脚本场景则加--force跳过询问:

skyvern run ui --force

注意--force会直接终止占用 8080 的进程,动手前确认那个进程不是别人的服务。

怎么干净地停掉服务

停止命令按端口找进程并终止,不需要你去记 PID:

命令停什么
skyvern stop all8000 + 8080 + 9090 上的 API 和 UI
skyvern stop server只停 API(--port可指定其他端口)
skyvern stop ui只停 UI
skyvern stop docker等价于docker compose down,停整个容器栈

想要后台常驻,终端不能一直挂着

skyvern run dev:它以脱离终端的方式把 API 和 UI 都放到后台,终端立即返回,打印两个 PID 供你随时核对。停掉它们同样用skyvern stop all

进阶玩法:脚本化、工作流自动化与 MCP

用 run code 批量执行 Python 脚本

如果你已经用 Skyvern 的 SDK 写好了自动化脚本,skyvern run code可以直接在 CLI 里跑它,参数有三种传法(优先级从高到低):

方式写法适合场景
JSON 文件--params-file params.json参数多、会被反复复用
JSON 字符串--params '{"k1": "v1"}'参数少,一条命令带过去
单个 flag-p k1=v1 -p k2=v2临时改一两个值

例如:skyvern run code my_script.py --params-file params.json。脚本不存在、不是.py后缀、JSON 写错,它都会打印明确的修正提示而不是直接抛异常。

在命令行触发、等待、取消工作流

工作流管理命令是脚本化批量的核心。触发并同步等结果(最多 5 分钟):

skyvern workflow run --id wpid_xxx \ --params '{"file": "invoice.pdf"}' --wait --timeout 300

其余操作都是同一风格:

场景命令
查组织里的所有工作流skyvern workflow list(支持--search--page-size
查某次运行里的任务明细skyvern tasks list --workflow-run-id wr_xxx
查运行状态skyvern workflow status --run-id wr_xxx
取消正在跑的运行skyvern workflow cancel --run-id wr_xxx
失败后重跑skyvern workflow retry --run-id wr_xxx
配好定时任务skyvern schedule系列(list / create / enable / disable / delete)

这套组合拳的含义是:定时任务交给schedule,单次执行交给workflow run --wait,结果查询交给tasks list——整个自动化闭环都不用离开终端。

把 Skyvern 暴露成 MCP 服务器

想让 Claude 或 Cursor 直接驱动浏览器自动化?skyvern run mcp就能起一个 MCP 服务器,关键参数:

参数含义默认值
--transport传输方式:stdio/sse/streamable-httpstdio
--scope只暴露部分工具:operate/build/browser/leanall
--host/--port/--pathHTTP 传输时的监听地址127.0.0.1:8000/mcp
--browser-extension额外启用 Chrome 扩展桥接(仅 stdio)

stdio是默认值,适合本地 AI 编程工具直接拉起;要远程托管时换streamable-http并显式传--host 0.0.0.0

避坑与排错:常见报错对照表 ⚠️

常见问题原因处理
table organizations already existsskyvern==1.0.31的已知 bug删掉~/.skyvern/data.db,升级到 1.0.32+,再跑skyvern quickstart
pip install skyvern报 ResolutionImpossible1.0.31 的 litellm/fastmcp 依赖冲突升级到 1.0.32+,或改用uv pip install skyvern
Docker is not installed or not runningDocker Desktop 没启动启动 Docker 后重跑;Compose 路线强依赖 Docker
Postgres 容器名冲突(postgresql-container残留的独立 Postgres 容器和 Compose 自带服务打架重跑skyvern quickstart,按提示移除旧容器
UI 起不来,提示端口 8080 被占有其他进程占用确认后skyvern run ui --force,或先skyvern stop ui
服务没起来,提示浏览器安装未完成Chromium 没装好playwright install chromium后再skyvern run server
不确定环境哪里有问题——先跑skyvern doctor,它会逐项检查依赖、配置和服务状态

更多资源

Skyvern CLI 把"部署、运行、排错"都压缩进了一个终端工具,装完skyvern[all]之后,你可以再也不会需要为一次自动化任务去开浏览器。下面两个入口足够你继续深入:

  • 官方文档与快速上手:README.md
  • CLI 全部命令源码:skyvern/cli/

【免费下载链接】skyvernAutomate browser based workflows with AI项目地址: https://gitcode.com/GitHub_Trending/sk/skyvern

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/5 18:44:46

DIY示波器实测:性能边界与嵌入式调试应用

把DIY示波器性能实测这件事讲清楚之前&#xff0c;先泼半盆冷水。任何示波器都不是靠一句“绝对超出你想象”就能下结论的&#xff0c;它本质上就是带宽、采样率、触发、存储深度和前端信噪比互相妥协的测试设备。会判断边界的人&#xff0c;能把低成本方案用到很顺手&#xff…

作者头像 李华
网站建设 2026/9/5 18:38:04

微信小程序超市购物系统毕业设计:从架构到实现的完整指南

简介&#xff1a;这是一套高完成度的微信小程序超市购物系统毕设项目源码&#xff0c;面向计算机、电子信息工程等专业本科生&#xff0c;解决毕业设计选题难、实战经验缺、代码调试繁三大痛点&#xff0c;适用于毕设开发、课程设计及期末大作业场景。资源包共1609个文件&#…

作者头像 李华
网站建设 2026/9/5 18:34:41

Sk150Pro双供电改装纹波过大?从测量到输出滤波的排查路径

型号为 Sk150Pro 的直流电源模块&#xff0c;在改装成双供电电源后&#xff0c;往往会被同一个问题卡住&#xff1a;输出纹波过大。不少方案为了压纹波&#xff0c;把输出电容加了一倍又一倍&#xff0c;LC 滤波也加了&#xff0c;结果示波器上仍然看到几十甚至几百毫伏的波动。…

作者头像 李华
网站建设 2026/9/5 18:32:32

基于STM32F4的USB转CAN适配器设计与SocketCAN驱动实现

简介&#xff1a;这是一套面向嵌入式Linux开发者的STM32F4系列CAN通信固件实现方案&#xff0c;专为XCAN PRO/PRO FD/FD USB2CAN硬件兼容设计&#xff0c;解决基于STM32F407/405/417/415芯片的SocketCAN驱动移植与USB-CAN双模通信集成难题&#xff0c;适用于工业现场总线调试、…

作者头像 李华
网站建设 2026/9/5 18:32:19

高校请假管理系统实战:SpringBoot+Vue3前后端分离开发全解析

高校请假管理系统这类课题&#xff0c;在 Java 毕业设计和课程设计里出现频率一直很高。071 编号通常说明它来自一套毕设课题库&#xff0c;核心定位是“前后端分离 流程审批 角色权限”&#xff0c;技术栈从标题就能看出来&#xff1a;SpringBoot 提供后端接口服务&#xff…

作者头像 李华