← Back to Hub
Global自動化v0.1by Microsoft Research中風險 · 有寫入或對外

Webwright

給 Agent 一個終端機,讓它像工程師一樣「讀」網頁

Web AgentPlaywrightMicrosoftPython

Webwright 是微軟研究院開源的極簡終端機式 Web Agent harness。它不把網頁原始碼無腦塞進 Context 讓 LLM「猜」,而是給 Agent 一個終端機,讓它自己寫並執行 Playwright 程式來讀網頁、必要時截圖自我驗證,最後產出一支可重複執行的 Python 腳本。

作者
Microsoft Research
授權
MIT · 完全開源
主要語言
Python 3.10+ · Playwright
模型後端
OpenAI · Anthropic · OpenRouter
支援平台
Mac · Linux · Windows
Agent
Claude Code · Codex · OpenClaw · Hermes
01The Problem

為什麼 需要它?

CONTEXT 雜訊

原始碼全塞進 Context

傳統做法把整頁 HTML 丟給 LLM 用「猜」的,中間混雜大量導覽列、廣告、樣式雜訊,結果常常出錯。

LONG HORIZON

每步單次預測下一步

locked 在「看一頁 → 預測一個動作」的迴圈裡。流程一長,錯誤層層累積,第 30 步就崩給你看。

FRAGILE

像素 / 座標操作太脆

靠座標點擊或固定 selector,頁面一改版、一 lazy load 就整個失效,沒辦法穩定重跑。

NOT REUSABLE

做完即丟,無法複用

這次抓完的流程留不下來,下次同類任務要重新讓 AI 想一遍,時間與 token 都重複燒。

Webwright 把這些事,變成一支可重跑的程式

不是「猜網頁」,而是讓 Agent 寫扣、執行、截圖驗證、收工。

02Four Core Pillars

四個 核心能力

code-as-action
寫程式,而非猜動作

Agent 直接寫 Playwright 程式操作網頁,複雜邏輯(等 DOM 條件、處理 lazy load、翻頁迴圈)一次封裝成單一執行步驟。

core loop ≈ 450 LoC
workspace-as-state
工作區即狀態

瀏覽器隨開隨關、用完即丟,真正的真相來源是本地目錄裡的程式碼、log 與截圖,不依賴脆弱的瀏覽器 session。

plan.md + final_runs/
self-verification
截圖自我驗證

必要時用無頭瀏覽器截圖,比對每個關鍵點是否真的抓對,確認無誤才宣告完成,大幅提高正確率。

visual self-verify
reusable-tools
可重跑參數化腳本

craft 模式產出帶 argparse 的 CLI 工具,改參數就能再跑:--origin JFK --date 2026-07-01,等同自動長出 RPA。

final_script.py
03The Agent Loop

三個階段, 循環串接

01
階段一

Plan 規劃

把任務拆解寫進 plan.md,列出要走哪些頁、抓哪些欄位、用什麼條件驗收。

02
階段二

Act 執行

在終端機裡寫並跑 Playwright 程式,spawn 瀏覽器檢視回來的資料,自主決定下一步、迭代修正。

03
階段三

Verify 驗證

對存下的截圖做視覺比對,確認關鍵結果正確;不對就回到階段二重寫,直到通過。

三個階段在一個 flat 的 prompt → observe → act 迴圈裡反覆串接 — 像工程師迭代一支 RPA 腳本,而非 AI 一次性盲猜。

04Real-World Applications

四個 實戰應用(台灣場景)

01

政府電子採購網 — 標案監控

老網站、要逐步選下拉條件、結果動態載入又要翻頁,單次「讀一頁丟給 LLM」很容易漏抓。

YOU → 每天巡採購網,抓「資訊服務類、預算 50 萬以上、台北市」的新公告
AGENT → 寫 Playwright 選條件 → 等渲染 → 翻頁逐筆抓 → 截圖驗證 → craft 成排程工具
02

公司登記查詢 — 批次盡職調查

商業司每查一家就要重填表單、過驗證、點進去抓欄位,人工做 30 次想死。

YOU → 這 30 家公司,查登記資本額、代表人、營業項目,整理成表
AGENT → 把「查一家」寫成函式 → 迴圈跑 30 家 → 輸出結構化表格,工具可複用到 100 家
03

591 / 實價登錄 — 物件條件比對

591 是重 JS、lazy load、要捲動載入、要翻頁的典型動態站,沒有乾淨 API。

YOU → 抓板橋、3 房、租金 3 萬內、近捷運的物件,連同實價成交行情整理
AGENT → 腳本明確「等 DOM 條件出現再抓」,處理 lazy load 不抓半截 → 改區域參數即複用
04

法規 / 判決 — 批次整理

全國法規資料庫、司法院判決查詢,跨頁、要點進每筆、結果零散。

YOU → 抓「個資法 + AI」相關條文與近一年相關判決,整理成摘要
AGENT → 多步驟蒐集 + 自動翻頁 + 落地成結構化檔案,而非一次性問答
別用它(殺雞用牛刀):查氣象、查匯率、查單一一筆資料 → 有 API 或一次 web search 就解決。Webwright 的價值只在「沒有好 API + 多步驟動態網頁 + 你會重複做」這個交集。
05Installation

不同 Agent, 不同裝法

前置 · 所有平台共用
# Python 3.10+,clone repo 後於根目錄執行
pip install -e .
playwright install chromium
# 備妥 OPENAI_API_KEY / ANTHROPIC_API_KEY
# (Claude Code 模式可免)
Claude Code
mkdir -p ~/.claude/skills ~/.claude/commands
ln -s "$PWD/skills/webwright" ~/.claude/skills/webwright
ln -s "$PWD/skills/webwright/commands" \
  ~/.claude/commands/webwright
# 重啟後:/webwright:run 或 /webwright:craft
OpenClaw
openclaw plugins install /absolute/path/to/Webwright
openclaw gateway restart
# 移除:openclaw plugins uninstall webwright
Hermes Agent
mkdir -p ~/.hermes/skills
ln -sfn /path/to/Webwright/skills/webwright \
  ~/.hermes/skills/webwright
# 啟動 hermes,自然語言觸發或 /webwright
需 Python 環境
需裝 Chromium
免 / 需 API Key
裝完需重啟
⚡ THE MAGIC WAY

把 GitHub URL 直接餵給 Agent

如果你已開著 Claude Code / Codex 且能存取檔案系統,可以直接餵網址讓它代裝:

根據這個網頁幫我安裝 webwright skill:
https://github.com/microsoft/Webwright
  1. clone 整個 repo 結構
  2. symlink skill 到 .claude/skills/ 與 commands/
  3. pip install -e . 並 playwright install chromium
  4. 提示重啟 → 啟用

Agent 會自己跑完上述步驟。 注意:它仍要實際執行 pip / playwright,不是一句話就裝完。

06Agent Integration

讓你的 Agent 看到 Skill

Agent
Reads from
Setup
Claude Code
~/.claude/skills/
symlink skills/webwright → skills/ 與 commands/,重啟
Codex
codex plugin
codex plugin marketplace add microsoft/Webwright → 重啟
OpenClaw
openclaw plugins
openclaw plugins install /path → gateway restart
Hermes Agent
~/.hermes/skills/
symlink skills/webwright,僅讀 SKILL.md,免 manifest
Claude Cowork / Dispatch
✗ 不支援 — 沙箱雲端 VM,無本機終端機

同一個 skills/webwright/ 純檔案包可跨 Claude Code、Codex、OpenClaw、Hermes 載入 — 但唯有「終端機原生」的 Agent 才跑得起它的 Python + 瀏覽器 runtime。

07Security Assessment

安全性 評估

加分項

  • 微軟官方 org · MIT 授權 · 附 SECURITY.md / CODE_OF_CONDUCT.md
  • 依賴極乾淨:僅 httpx / pydantic / playwright / typer,皆主流套件
  • 程式碼小(全專案 ≈ 1.5k LoC,核心 loop ≈ 450 行),可讀可審
  • API key 走環境變數,無硬編碼;Claude Code 模式免額外金鑰
  • 每次執行把 trajectory / 截圖落地到 disk,可事後稽核

需注意

  • 超新、低採用(2026/5 才開源、stars 個位數),未經大規模實戰驗證
  • 高權限:本質是授權 Agent 在本機跑它自寫的 Python + 開瀏覽器
  • Web Agent 提示注入風險,惡意網頁可能企圖操縱 Agent
  • 凡需登入的網站(健保、財稅、客戶後台)勿無人值守託管
  • symlink 安裝,repo 別放可被他人寫入的位置
使用建議

個人測試:放獨立沙箱 / 目錄,公開無登入資料的任務最安全。
企業客戶:建議先 fork 自審、隔離環境後再上線,符合 SPEAK 的 A(Authority)隔離原則。
教學專用:當作 web agent 架構(Code-as-Action vs 座標預測)的教材極佳。