Webwright 入門 - ターミナルで Playwright コードを書く Microsoft の Web エージェント

Webwright 入門 - ターミナルで Playwright コードを書く Microsoft の Web エージェント

作成日:
読了:11
更新日:

ブラウザを操作する AI エージェントというと、「画面を見て、次にどこをクリックするかを1手ずつ予測する」イメージがあります。これに対して Microsoft Research が2026年5月に公開した Webwright は、まったく別のアプローチを取ります。エージェントがターミナルで bash と Playwright のコードを書いて Web タスクをこなす——いわば「コード・アズ・アクション」型の Web エージェントです。

しかもコアはわずか1,000〜1,500行ほどとミニマル。それでいて長時間タスクのベンチマークで SOTA(最高水準)を更新しました。この記事では、Webwright の仕組み・ベンチ結果・使い方・設計思想を、公式リポジトリ(microsoft/Webwright)と Microsoft Research の記事を一次ソースに整理します。

NOTE

「Webwright」という名前のツールは複数あります。本記事が扱うのは Microsoft Research の Web エージェントフレームワークgithub.com/microsoft/Webwright)です。2024年から存在する「AI 搭載ターミナルシェル」の Webwright(MittaAI)とは別物です。

何が新しいのか: 「クリック予測」から「コードを書く」へ

従来の多くのブラウザエージェントは、スクリーンショットを見て「次に押す座標」や「DOM 上の要素」を1手ずつ選びます。Webwright の発想はこうです。

  • エージェントはターミナルを与えられ、bash コマンドと Playwright のコードを書いて実行する
  • 永続する成果物はブラウザのセッションではなく、ワークスペース上のコードとログである

公式の言葉を借りれば「The persistent artifact is not the browser session, but the code and logs in the local workspace(永続する成果物はブラウザセッションではなく、ローカルワークスペース上のコードとログだ)」。エンジニアが手元で RPA スクリプトを書いて回すのと同じやり方を、AI にそのままやらせる、というわけです。

この方式の利点は2つです。

  • 頑健で再利用できる: ワークフローを一度プログラムとして書けば、再実行・改変・共有ができる。座標クリックのような壊れやすさがない
  • 効率的: 1手ずつプリミティブな操作を出すのではなく、多数の Web 操作を1ステップ内で連鎖でき、複数のブラウザセッションを並行して扱える

ミニマルな設計

Webwright のもう一つの主張は「モデルが賢くなるほど、作り込んだエージェントの足場(harness)はむしろ足かせになる」という思想です。そのためコアは極めて小さく作られています。

モジュール行数の目安
エージェントループ(agents/default.py約450行
Playwright 環境約570行
CLI約150行
モデルバックエンド(各)150〜200行

マルチエージェントのオーケストレーションやグラフエンジンの類は無く、「ターミナル・ブラウザ・モデル」だけ。依存も httpx / pydantic / playwright / typer 程度です。

対応モデルバックエンドは OpenAI / Anthropic / OpenRouter。それぞれの API キー(OPENAI_API_KEY など)を使います。ライセンスは MIT です。

ベンチマーク結果

数字が説得力を持つ領域です。公式が示す主な結果です。

Odysseys(200 の長時間タスク)

構成成功率
Webwright + GPT-5.460.1%(平均76.1ステップ)
既存 SOTA(Opus 4.6)44.5%
素の GPT-5.4(座標予測ベースライン)33.5%

長時間(100ステップ規模)のタスクで、既存 SOTA を 15.6 ポイント上回り、素の GPT-5.4 比では 33.5% → 60.1% へと大きく改善しています。「コードを書く」方式が、ステップごとの座標予測を全難易度で上回った、というのが要点です。

Online-Mind2Web(300 の実サイトタスク)

モデル成功率
GPT-5.486.7%
Claude Opus 4.784.7%

コスト効率にも触れられており、GPT-5.4 は1タスクあたり平均 約 $2.37、Claude は約 $6.09。最初の50ステップで 82% の精度に達する、という分析もあります(いずれも公式記事の数値)。

NOTE

ベンチ数値は特定モデル・特定タスクセットでの結果です。OdysseysOnline-Mind2Web の構成・採点条件に依存するため、自分のユースケースにそのまま当てはまるとは限りません。傾向(コード・アズ・アクションが長時間タスクで効く)を読むのが実用的です。

インストールと使い方

前提は Python 3.10+、Playwright 経由の Chromium、そして選んだバックエンドの API キーです。

セットアップ
pip install -e .
playwright install chromium
export OPENAI_API_KEY="your-key"   # Anthropic を使うなら ANTHROPIC_API_KEY

タスクの実行は CLI から。設定 YAML を重ねて(-c)、タスク文(-t)と開始 URL を渡します。

タスクを実行する
python -m webwright.run.cli \
    -c base.yaml -c model_openai.yaml \
    -t "Search for flights from SEA to JFK on 2026-08-15 to 2026-08-20" \
    --start-url https://www.google.com/flights \
    --task-id demo_openai \
    -o outputs/default

設定は src/webwright/config/ の YAML をスタックする方式(base.yamlmodel_openai.yaml など)。実行結果はワークスペースにコード・ログ・スクリーンショットとして残り、task.json / report.json を生成して Flask 製のダッシュボードで振り返ることもできます。

Claude Code / Codex への組み込み

Webwright は単体 CLI だけでなく、各種エージェントのプラグイン/スキルとしても配布されています。たとえば Claude Code には次のように入れられます。

Claude Code に入れる
/plugin marketplace add microsoft/Webwright
/plugin install webwright@webwright
/webwright:run <タスク>
/webwright:craft <再利用するタスク>

OpenAI Codex には codex plugin marketplace add microsoft/Webwright で追加し、チャット内で @webwright を使う、といった具合です。手元のコーディングエージェントから「Web 操作だけ Webwright に任せる」という連携ができます。MCP 経由でブラウザを操る Playwright MCP とはアプローチが異なり、こちらはエージェント自身に Playwright コードを書かせるのが特徴です。

設計思想と限界

Webwright のチームは、開発で直面した課題も率直に挙げています。記事化のうえで知っておくと誠実です。

  • 早すぎる「完了」宣言: タスク未達なのに done と言ってしまう問題に対し、自己反省(self-reflection)のゲートを入れた
  • コンテキスト爆発: 長いタスクで履歴が膨れるため、20ステップごとに履歴を圧縮している
  • スクリプト再利用の難しさ: 再利用前の検証、サイレント障害の検知、古くなったスクリプトの更新・廃棄といった仕組みが今後の課題

また「小さなモデルは、あらかじめ用意したツールがある方がうまく動く」とも述べられており、コードを書く方式は強いモデルほど効く傾向があります。万能ではなく、モデル品質に成績が依存する点は押さえておきましょう。

まとめ

  • Webwright は Microsoft Research のターミナルネイティブな Web エージェントフレームワーク(2026年5月公開、MIT)
  • クリックを1手ずつ予測せず、エージェントが bash と Playwright コードを書いて実行する「コード・アズ・アクション」型。永続成果物はワークスペースのコードとログ
  • コアは約1,000〜1,500行とミニマル。「強いモデルほど足場は薄くてよい」という思想
  • ベンチでは Odysseys で 60.1%(素の GPT-5.4 の 33.5%、既存 SOTA 44.5% を更新)、Online-Mind2Web でも高成績
  • 導入は pip install -e .playwright install chromium、CLI でタスク実行。Claude Code / Codex のプラグインとしても使える
  • 限界として、完了の誤判定(自己反省ゲート)・コンテキスト爆発(20ステップ毎に圧縮)・スクリプト再利用の検証が課題

「Web エージェントに必要なのは、凝った足場ではなくターミナルだった」——Webwright はその主張を、小さなコードベースと高いベンチ結果で示したフレームワークです。ブラウザ自動化を再実行できるコード資産として残したい場面で、特に効いてきます。

参考リンク

Playwright MCP 入門 - AIエージェントにブラウザ操作と画面確認を任せる

Playwright MCP 入門 - AIエージェントにブラウザ操作と画面確認を任せる

9

Microsoft 製の Playwright MCP を整理します。LLM にブラウザ自動化を開放する MCP サーバーで、スクリーンショットや視覚モデルではなくアクセシビリティツリーを使うのが特長です。Claude Code への導入(claude mcp add)、提供される主なツール、headless / isolated などの実行モード、そして「実装したが画面を見ていない」問題への効き方をまとめます。

Microsoft Build 2026 開発者目線まとめ - MAI モデル群、Windows のエージェント実行基盤、WSL/Foundry の進化

Microsoft Build 2026 開発者目線まとめ - MAI モデル群、Windows のエージェント実行基盤、WSL/Foundry の進化

10

2026年6月2日の Microsoft Build 2026 から、開発者に効く発表を整理します。自社製 MAI モデル群(MAI-Thinking-1 / MAI-Code-1 ほか)、Windows をエージェント実行基盤にする MXC と Windows AI API の CPU/GPU 拡張、WSL コンテナや Windows Development Configurations、Foundry の強化までを解説します。

Microsoft Agent 365 と GitHub Copilot CLI - 「モデルは何でもいい、ガバナンス層こそ我々」というMSの戦略

Microsoft Agent 365 と GitHub Copilot CLI - 「モデルは何でもいい、ガバナンス層こそ我々」というMSの戦略

11

2026年5月1日に一般提供を開始したMicrosoft Agent 365と、2月にGAしたGitHub Copilot CLIを軸に、Microsoftが狙う「エンタープライズAIエージェントのガバナンス層」という立ち位置を、observe/govern/secureの3本柱とともに整理します。