Skyvern 是 2024 年 2 月開源的瀏覽器自動化框架,在 GitHub 累積 23,268 顆星標與 2,215 個分支,採 AGPL-3.0 授權。它把 Playwright 的腳本能力與視覺語言模型結合,讓代理以自然語言完成填表、登入、下載與資料抽取,最新穩定版為 2026 年 10 月 14 日的 v1.0.56。

Skyvern README 開頭畫面,顯示專案標誌 Skyvern、標語 Automate Browser-based workflows using LLMs and Computer Vision,以及網站、文件、Discord 與授權徽章列

Skyvern 是什麼?

Skyvern 是以視覺語言模型驅動的瀏覽器自動化框架,以自然語言取代固定選擇器,可操作未曾造訪的網站,並提供 Playwright 相容介面。

專案的自我描述相當直接:以大型語言模型與電腦視覺自動化瀏覽器工作流程。傳統做法的核心是選擇器,工程師必須先讀取網站的 DOM 結構,找出元素路徑,再寫成腳本。這條路線的脆弱之處不在撰寫階段,而在維護階段,任何版型調整都可能讓整套流程失效。

Skyvern 的替代方案是把判斷交給模型。代理先看畫面,辨識出可互動的元素與其語意,再決定點擊或輸入的目標。README 列出三項直接好處:能操作從未見過的網站、對版型改動有抵抗力、同一套流程可套用到大量不同網站。

這三點指向同一個商業場景。企業內部的供應商發票下載、政府表單填寫、保險報價查詢,長期由機器人流程自動化工具處理,而這類工具最常見的失敗原因正是頁面元素位移。把定位邏輯從程式碼搬到模型,等於把維護成本從工程排期轉為推論費用。

Skyvern 的代理架構如何運作?

系統以多個代理組成的群體理解網站:先辨識頁面元素與可用動作,再規劃步驟並依序執行,過程中以視覺資訊校正判斷,因此不需要為每個網站預先撰寫選擇器或動作對照表。

README 說明此設計靈感來自 BabyAGI 與 AutoGPT 的任務驅動代理架構,並補上關鍵一環:讓代理透過 Playwright 這類瀏覽器函式庫真正操作頁面。純對話式代理能規劃卻無法落地,純腳本工具能執行卻無法應變,Skyvern 把兩端接起來。

執行時,任務以三個要素描述:起始網址、自然語言提示、可選的資料結構定義。代理在頁面上反覆進行觀察、決策與操作,直到任務完成或觸發中止條件。整個過程可即時串流到本機瀏覽器,讓操作者看見代理正在做什麼,必要時介入。

這種架構的代價是每次執行都要消耗模型呼叫。頁面越複雜、步驟越多,呼叫次數越高。對於高頻且格式穩定的內部系統,傳統腳本在成本上仍然佔優;Skyvern 的價值出現在網站數量多、版型變動頻繁、或根本沒有辦法取得開發配合的外部網站。

Skyvern 在基準測試的表現如何?

專案在 WebBench 取得 64.4% 準確率,WebVoyager 評測達 85.8%,並在填表、登入、下載這類寫入型任務中排名第一。

WRITE 任務排名是最值得留意的一項。瀏覽器代理的公開評測長期偏向讀取型任務,例如查詢資訊、整理列表,這類任務失敗的代價低,重跑一次即可。填表與登入屬於寫入型操作,錯一步就可能送出錯誤資料或觸發帳號鎖定,對判斷準確度的要求完全不同。

官方技術報告把 WRITE 任務與機器人流程自動化的實際需求連在一起,指出這是 Skyvern 主要鎖定的場景。這個定位與 README 列出的實際案例一致:多站台發票下載、求職申請流程、製造業物料採購、政府網站註冊與表單填寫、保險報價查詢。

需要提醒的是,基準測試由專案方自行執行與發布,其他代理框架未必在同一條件下受測。64.4% 的絕對值也意味著每十次任務仍有約三次失敗,實務上必須設計重試與人工覆核機制,不能把代理輸出直接當成最終結果。

Skyvern GitHub 儲存庫首頁頂部,顯示 Skyvern-AI/skyvern 專案名稱、2.3 萬星標數、2.2 千分支數與專案描述

Skyvern 的 SDK 與 Playwright 如何整合?

SDK 在 page 物件加入 act、extract、validate、prompt 四個 AI 指令,標準動作可附加提示,三種模式並存:選擇器、自然語言、選擇器優先。

這種設計降低了遷移成本。既有腳本可以原封不動執行,只在容易失效的步驟改用自然語言定位。README 示範三種寫法並列:page.click("#submit-button") 走傳統路徑,page.click(prompt="Click the green Submit button") 走模型路徑,兩者同時提供時則先試選擇器、失敗才交給模型。

四個核心指令各有分工。act 執行動作並等待頁面反應,extract 依提示或 JSON 結構抽取資料,validate 回傳布林值供流程判斷,prompt 則送出任意提示取得回應。上層另有 page.agent 提供更高階的工作流指令,包含執行多步驟任務、以已儲存憑證登入、依提示下載檔案,以及呼叫預先建好的工作流。

資料抽取的結構化能力對下游系統特別重要。只要在提示旁附上結構定義,輸出就會依欄位對齊,可直接寫入資料庫或試算表。這一步省下過去必須自行撰寫的解析與清洗程式碼,也是此類框架能否進入生產環境的關鍵差別。

Skyvern 的工作流可以做到哪些事?

工作流以積木組合任務,涵蓋瀏覽器任務、資料抽取、狀態驗證、迴圈、檔案解析、寄送郵件、HTTP 請求與自訂程式碼,條件分支仍在開發中,尚未提供。

任務是最小單位,一則任務對應一次網址導航與一組目標。工作流則把多個任務串成完整業務流程,README 舉了兩個例子:下載某日期之後的全部發票,先導航至發票頁、篩選日期、抽取清單、逐一進入下載;在電商網站完成購買,則依序為加入購物車、驗證購物車狀態、進入結帳。

這套積木支援的不只是瀏覽器操作。HTTP 請求積木可呼叫外部 API,自訂程式碼積木可執行任意邏輯,寄送郵件積木負責通知,檔案上傳積木把結果寫入物件儲存。對於需要把網頁操作嵌入既有系統的團隊,這種混合編排比純腳本更接近實際需求。

對外整合同樣到位。專案提供 MCP 伺服器,讓支援該協定的語言模型直接呼叫;亦有關於 Zapier、Make.com 與 n8n 的整合文件,可把工作流接進既有的自動化平台。缺一項的是條件分支,README 明確標示仍在開發,複雜的判斷邏輯目前需寫進自訂程式碼區塊。

如何在本機部署 Skyvern?

以 pip 安裝 skyvern 的 all 版本後執行 quickstart,預設使用家目錄的 SQLite;亦可改用 Docker Compose 一併啟動資料庫與介面。

最短路徑是 pip install "skyvern[all]" 加上 skyvern quickstart,完成後開瀏覽器連上本機 8080 埠即可使用圖形介面。資料庫預設落在 ~/.skyvern/data.db,設計目的是讓 pip 路線不必先架 Postgres 或 Docker 就能跑起來,需要正式資料庫時再以參數指定連線字串。

容器路線適合不想在本機安裝 Python 與 Node 的團隊,複製環境範本、填入模型金鑰、啟動 compose 即可。兩種路線都要求 Python 3.11 至 3.13,Windows 使用者另需 Rust 與 Visual Studio 的 C++ 開發工具與 Windows SDK。

README 有一段罕見的坦白,直接列出已知安裝問題。1.0.31 版曾出現資料表已存在的 SQLite 錯誤與 litellm、fastmcp 的依賴解析衝突,官方建議升級至 1.0.32 以上,或以 uv 安裝繞過解析器。這類除錯段落通常藏在 issue 區,寫進安裝章節說明維護團隊理解初次部署的實際痛點。

Skyvern 如何處理登入與雙因素驗證?

支援 QR 碼、電子郵件與簡訊三種雙因素驗證,憑證存於內建服務或 Bitwarden,可經 HTTP API 介接自建服務;1Password 尚未支援。

登入是自動化流程最常中斷的環節。多數網站的登入流程包含驗證碼、一次性密碼或裝置信任判斷,單純把帳號密碼寫進腳本無法通過。Skyvern 把憑證獨立成可管理的資源,任務只需引用憑證編號,實際驗證在背景完成。

README 的支援清單相當誠實,Bitwarden 與自建憑證服務標記為已完成,1Password 與 LastPass 仍為未勾選狀態。對於憑證集中在 1Password 的企業,這代表短期內需要自行以 HTTP API 介接。

另有一項安全設計值得注意。專案允許把本機 Chrome 的控制權透過通道對外開放,供雲端版本操作已登入的瀏覽器,README 以醒目方式警告必須加上 API 金鑰,否則任何取得網址的人都能完全控制該瀏覽器。這條提醒出現在功能說明之後,說明其風險等級被視為高。

Skyvern 有哪些限制與風險?

核心程式碼採 AGPL-3.0,對外提供服務時有開源義務;反機器人機制僅存在於商業雲端版本;預設收集使用統計;儲存庫體積達六百多 MB,未結問題近三百項。

授權是最需要提前確認的一項。AGPL-3.0 的網路服務條款要求,若修改後的程式碼以服務形式對外提供,必須一併釋出原始碼。把它嵌入對客戶提供的產品前,法務必須先評估;純內部使用則不受此限。

功能邊界同樣清楚。README 明言反機器人偵測的相關機制只存在於官方雲端服務,開源版本不含這些能力。面對驗證碼密集或風控嚴格的網站,自架版本的實際成功率會低於雲端方案,這也是商業模式的分界線。

遙測預設開啟是另一項部署前需處理的設定。專案會收集基本使用統計,可用環境變數關閉。此外,儲存庫體積約 669 MB,未結問題 291 項,對需要在 CI 環境反覆建置的團隊,這兩項都會帶來實際負擔。

Skyvern 的專案數據反映什麼?

專案累積 23,268 顆星標、2,215 個分支、近 30 日提交 351 次、92 位貢獻者,未結問題 291 項,採 AGPL-3.0 授權。

23,268Stars
2,215Forks
92貢獻者
291未結問題
351近 30 日提交
AGPL-3.0授權條款

星標對分支比約為 10.5 比 1,屬於工具型專案的常見區間。近 30 日 351 次提交則明顯高於同星級專案的平均節奏,配合 160 個版本標籤與約每兩週一次的穩定版發布,反映維護團隊以高頻小步的方式推進。

貢獻者 92 位對應 23,268 顆星標,密度偏低。這個組合通常意味著專案由核心團隊主導開發,外部貢獻集中在文件與邊緣修正,社群共筆的程度有限。對採用者而言,這代表功能方向主要取決於單一團隊,長期治理風險需納入評估。

Skyvern 儲存庫側欄統計區塊,顯示 23.3k 星標、2.2k 分支、101 位關注者、Python 為主要語言,以及 AGPL-3.0 授權與官方網站連結

出處連結有哪些?

原始碼在 GitHub 的 Skyvern-AI/skyvern,套件名 skyvern,官方網站另載技術報告與基準說明。

主要入口是 GitHub 儲存庫 https://github.com/Skyvern-AI/skyvern,README 提供英文與中文版本。安裝套件名稱為 skyvern,與儲存庫名稱大小寫不同,於 Linux 環境下輸入時需注意。

官方網站的部落格存放兩份關鍵報告,一份說明 2.0 版在 WebVoyager 評測取得 85.8% 的技術細節,另一份介紹 WebBench 基準的設計與比較方法。文件站另有憑證管理、瀏覽器通道、模型設定的完整說明,MCP 整合與各家自動化平台的接法亦在其中。

總結:Skyvern 適合什麼團隊?

適合需要跨多個外部網站填表與下載、版型經常變動的團隊;若流程單一穩定,或產品無法承擔 AGPL 義務,傳統腳本更合適。

Skyvern 的價值在於把維護負擔從選擇器轉移到模型判斷。對於要處理數十個外部網站、卻沒有對方開發配合的團隊,這個轉移能把每季的腳本修補工作壓縮成推論成本與少數失敗重試,這是 23,268 顆星標背後的真實需求。

採用前應確認四件事:授權條款是否與產品形態相容、反機器人需求能否接受自架版本的限制、憑證是否已有可介接的來源、以及是否願意為約三成的任務失敗設計覆核流程。若四項皆有答案,Skyvern 可作為瀏覽器自動化的主力;若期待開箱即用且零維護,托管服務仍是更省時的選擇。