技術 約3分で読めます

agent-browser: AIエージェント向けブラウザ自動化CLI

Vercel Labsが2026年1月11日に公開したagent-browserというツールを見つけた。AIエージェント向けのブラウザ自動化CLIで、Playwright MCPより軽量に使えそうだったので調べてみた。

基本情報

  • リポジトリ: vercel-labs/agent-browser
  • バージョン: 0.4.0(2026年1月12日時点)
  • ライセンス: Apache-2.0
  • 依存: playwright-core ^1.57.0

インストール

npm install -g agent-browser
agent-browser install  # Chromiumをダウンロード

Linuxの場合はシステム依存関係も必要。

agent-browser install --with-deps

アーキテクチャ

Rust製CLIとNode.jsデーモンの2層構造。

Rust CLI(コマンド解析)

Node.js Daemon(Playwright管理)

Chromium(実際のブラウザ操作)

Rustバイナリがない環境では純粋Node.jsにフォールバックする。デーモンは初回コマンドで自動起動し、以降の操作が高速になる。

基本的な使い方

# ページを開く
agent-browser open example.com

# アクセシビリティツリーを取得(AI向けの核心機能)
agent-browser snapshot

# 要素をクリック(refで指定)
agent-browser click @e2

# フォームに入力
agent-browser fill @e3 "test@example.com"

# スクリーンショット
agent-browser screenshot page.png

# ブラウザを閉じる
agent-browser close

核心機能: snapshot + ref

agent-browserの最大の特徴はsnapshotコマンド。ページのアクセシビリティツリーを取得し、各要素にref(参照ID)を付与する。

$ agent-browser snapshot -i
- heading "Example Domain" [ref=e1] [level=1]
- button "Submit" [ref=e2]
- textbox "Email" [ref=e3]
- link "Learn more" [ref=e4]

-iオプションでインタラクティブ要素(ボタン、リンク、入力欄など)のみに絞れる。

このrefを使えば、CSSセレクタやXPathより安定した要素選択が可能。DOM構造が変わってもアクセシビリティツリーは比較的安定しているため、AIエージェントとの相性が良い。

snapshotオプション

オプション説明
-i, --interactiveインタラクティブ要素のみ
-c, --compact空の構造要素を除去
-d, --depth <n>ツリーの深さを制限
-s, --selector <sel>特定セレクタにスコープ

Claude Codeでの活用

Claude Codeのスキル機能と組み合わせると、/browse https://example.com のようなコマンドでブラウザ操作ができる。

.claude/skills/browse/SKILL.md の例:

---
permissionMode: bypassPermissions
tools: Bash
model: claude-haiku-4-5-20251001
---

# agent-browser でページ取得

## 引数: $ARGUMENTS
形式: `URL [質問]`

## 実行手順

agent-browser open "【URL】"
agent-browser snapshot -i -c
agent-browser close

snapshot結果を元に質問に回答する。

フォーム入力が必要な場合は、snapshotで取得したrefを使う。

agent-browser snapshot -i --json  # ref付きで要素一覧を取得
agent-browser fill @e3 "value"    # refで入力欄を指定
agent-browser click @e5           # refで送信ボタンをクリック

現状の注意点

公開直後のため、いくつか問題がある。

sessionコマンドが動かない(Issue #2)

複数の独立したブラウザインスタンスを管理するsessionコマンドが未実装エラーになる。現時点では毎回closeして新規にopenする運用が安全。

公式スキル定義がない(Issue #1)

Claude CodeやOpenCode向けの公式SKILL.mdはまだ用意されていない。自分で書く必要がある。

Playwright MCPとの比較

項目agent-browserPlaywright MCP
設定npmインストールのみMCP設定が必要
起動CLI直接実行MCPプロトコル経由
出力テキスト/JSONMCP形式
AI連携snapshot + refスナップショット
成熟度公開直後安定版

agent-browserはMCP設定なしで動くのが利点。一方、IDEとの統合はPlaywright MCPのほうが進んでいる。

まとめ

agent-browserはAIエージェント向けに設計されたブラウザ自動化CLIで、snapshot + refによる要素選択が特徴。公開直後でまだ荒削りな部分はあるが、Vercel Labsが開発しているので今後の発展に期待できる。

Playwright MCPの設定が面倒な場合や、シンプルにCLIからブラウザを操作したい場合に選択肢になりそう。