4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Chrome DevTools for Agentsのトークン消費・実行時間をplaywright-cliと比べてみた

4
Last updated at Posted at 2026-06-25

こんにちは!
KDDIアイレットの取り組みとして6月22日〜7月3日の期間で開催中の「Google Cloud Next '26 / Google I/O やってみた系ブログリレー」、本日は9日目の投稿です。
今回は「Google I/O 2026 で発表された Chrome DevTools for Agents」を対象に、簡単な比較を行ってみました。

前回の記事はこちらです。


動機

Google I/O 2026 で Chrome DevTools for Agents が発表されました。AI エージェントがアクティブな Chrome セッションに接続し、コンソールログ・ネットワークトラフィック・アクセシビリティツリーを直接参照してデバッグや Lighthouse 監査を自律的に行えるというものです。

LY Corporation がパフォーマンス監査の手動分析を 96〜98% 削減したという事例も紹介されています。
少し前に、Chrome Devtool MCPのリモートデバッグ機能が使用可能となっていますが、そちらや、playwright-cliと比較する場合にトークン消費がどう変わるのか、興味があったので簡単に調べてみました。

Chrome DevTools for Agents とは

Chrome DevTools for Agents は、MCP(Model Context Protocol)経由で AI エージェントが Chrome の内部データに直接アクセスできる仕組みです。

エージェントが利用できる主な機能は以下の3つです。

  • ライブデバッグ — アクティブな Chrome セッションに接続し、コンソールログやネットワークリクエストを取得
  • UX エミュレーション — レスポンシブデザイン・地理情報・ユーザーフローをエージェントが制御
  • Lighthouse 監査 — アクセシビリティ・SEO・パフォーマンスの自動監査

前提

対象ページ

自身の Qiita 記事を使用しました。

スクリーンショット 2026-06-24 8.46.40.png

プロンプト

3モードすべてに対して見出し構造を取得するタスクを指示してみました。

この記事の構成(セクション見出しと各セクションの概要)をまとめて
URL: https://qiita.com/y-mae/items/a869b52f2fa401133087

計測方法

モードごとにセッションを分離し、各セッションで1コマンドだけ実行した後に /costSettings > Usage)でトークン数を記録しました。

今回の比較構成

以下3ツールを比較対象としました。

ツール 位置づけ
chrome-devtools-cli(plugin) Chrome DevTools for Agents(プラグイン接続)
chrome-devtools(デバッグモード) Chrome DevTools for Agents(MCP server + --autoConnect
playwright-cli 比較対象(ブラウザ自動化ツール)

①chrome-devtools-cli(plugin)の場合

Claude Code にプラグインとして追加します。

/plugin marketplace add ChromeDevTools/chrome-devtools-mcp
/plugin install chrome-devtools-mcp@chrome-devtools-plugins

インストール後は Chrome を起動して対象ページを開いた状態にするだけです。エージェントが自動的にアクティブなタブに接続します。

②chrome-devtools(デバッグモード)の場合

--autoConnect フラグを使った接続方式です(Chrome 144 以降が必要)。

1. Chrome でリモートデバッグを有効化

Chrome のアドレスバーに chrome://inspect/#remote-debugging と入力し、リモートデバッグを有効にします。

2. MCP 設定に --autoConnect を追加

Claude の MCP 設定ファイルに chrome-devtools サーバーを追加し、--autoConnect オプションを指定します。

{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": ["-y", "chrome-devtools-mcp@latest", "--autoConnect"]
    }
  }
}

3. 接続許可ダイアログを承認

Claude Code からリクエストを送ると、Chrome 側で DevTools 接続の許可を求めるダイアログが表示されます。承認することで接続が確立します。
スクリーンショット 2026-06-24 8.52.06.png

接続後は evaluate_script などのツールを呼び出せます。

エージェントはブラウザの認証済みセッション・Cookie・JavaScript API にアクセスできます。信頼できるエージェントのみで使用してください。

③playwright-cli

記載がありますが、以下コマンドでインストール可能です

npm install -g @playwright/cli@latest

結果

①chrome-devtools-cli(plugin)

プロンプトを送ると、AI は navigate_page でページに遷移し、evaluate_script で記事本文を取得しました。
スクリーンショット 2026-06-26 0.01.35.png

取得した記事本文から見出し構造を解釈し、以下のような出力が得られました。
スクリーンショット 2026-06-26 0.04.09.png

コスト(claude-sonnet-4-6

項目
使用ツール navigate_page / evaluate_script
Input tokens 5
Output tokens 1,600
Cache read 86,700
Cache write 19,700
合計コスト $0.1688

スクリーンショット 2026-06-26 0.00.40.png


②chrome-devtools(デバッグモード)

「Chrome のデバッグモードを使用する」形で、同じ指示をしてみます。
スクリーンショット 2026-06-24 8.51.56.png

Chrome 側で、 DevTools 接続の許可を求めるダイアログが表示されます。

スクリーンショット 2026-06-24 8.52.06.png

最初に list_pages でブラウザで開いているページ一覧を取得し、select_page で対象ページを指定します。

スクリーンショット 2026-06-24 8.53.02.png

その後、AI 自身が JavaScript を書いて evaluate_script で実行します。まず見出し要素を取得する関数を実行し…

スクリーンショット 2026-06-24 8.53.50.png

記事本文のコンテナを特定して見出しと本文を対応づける関数を実行し…

スクリーンショット 2026-06-24 8.54.47.png

さらに本文テキストを取得する関数を実行しました。計3回の evaluate_script 呼び出しで目的のデータを取得しています。AI が自分で DOM セレクタを指定した JS を書いて実行するため、取得されるのは記事本文のコンテナに絞り込んだデータです。

() => {
  const selectors = ['.it-MdContent', '.markdown-body', '[class*="ArticleBody"]', 'article'];
  let container = null;
  for (const s of selectors) {
    container = document.querySelector(s);
    if (container) break;
  }
  return container
    ? { tag: container.tagName, className: container.className, innerText: container.innerText.slice(0, 2000) }
    : { found: false };
}

スクリーンショット 2026-06-24 8.54.59.png

コスト(/cost スクリーンショット)

スクリーンショット 2026-06-24 8.56.44.png

項目
使用ツール list_pages / select_page / evaluate_script(3回)
Input tokens 23(Sonnet)+ 590(Haiku)
Output tokens 2,700(Sonnet)+ 24(Haiku)
Cache read 359,100(Sonnet)
Cache write 21,900(Sonnet)
合計コスト $0.2809

③playwright-cli

playwright-cli goto でページに遷移してコンテンツを取得しました。

スクリーンショット 2026-06-24 9.02.37.png

Playwright Remote Control でページが開いた状態を確認できます。(playwright-cli showコマンドをターミナルで叩くと表示される)
スクリーンショット 2026-06-24 9.04.58.png

取得結果

スクリーンショット 2026-06-24 9.05.47.png

Playwright は独自の参照ID(ref=)付きスナップショット形式で返します。①②と異なりページ全体が対象で、ナビ・サイドバーも取得範囲に含まれます。

- text: Qiita Tech Festa          ← ナビ
- text: 公式コラム
- text: Qiita Careers
- heading "Qiitaにログインして..." [level=2] [ref=e403]  ← サイドバー
  ...(中略)...
- heading "Claude Code のスキルで..." [level=1] [ref=e103]  ← 記事本文
- heading "この記事について" [level=2] [ref=e121]
- heading "作成したスキル" [level=2] [ref=e130]
  ...(中略)...
- heading "まとめ" [level=2] [ref=e262]
- heading "参考リンク" [level=2] [ref=e264]

コスト(/cost スクリーンショット):

スクリーンショット 2026-06-24 9.06.02.png

項目
使用ツール goto など
Input tokens 360(Sonnet)+ 568(Haiku)
Output tokens 3,800(Sonnet)+ 23(Haiku)
Cache read 413,600(Sonnet)
Cache write 29,800(Sonnet)
合計コスト $0.3608

比較まとめ

chrome-devtools-cli chrome-devtools(デバッグ) playwright-cli
主なツール navigate_page / evaluate_script evaluate_script(3回) goto など
Sonnet input 5 23 360
Sonnet output 1,600 2,700 3,800
Cache read 86,700 359,100 413,600
Cache write 19,700 21,900 29,800
コスト $0.1688 $0.2809 $0.3608
playwright-cli 比 −53% −22% 基準
実行時間(実測値) 34秒 1分54秒 47秒

※ 数値は参考値としてご覧ください。

plugin モードと debug モードはどちらも evaluate_script で DOM を取得する点は同じですが、debug モードは事前に list_pagesselect_page でセッションを特定するステップが入るため、ツール呼び出しが計3回になります。plugin モードはその手順が不要なため呼び出し回数が少なく、実行時間(34秒 vs 1分54秒)とコストの両面で有利になったと考えられます。

playwright-cli の Cache write が最も多いのは、goto + スナップショット取得でページ全体を ref= 形式で展開するため語数が増えやすいためと思われます。


まとめ

Chrome DevTools for Agents は今回の構造取得タスクにおいては、playwright-cli よりもトークン消費を抑えられることがわかりました。
必要な情報をある程度絞って取得できるため、より効率的なトークン消費が期待できます。

今回は単一ページの構造取得という限定的なタスクでの比較にとどめましたが、既存のアプリをベースとしたテストケース作成など、より複雑なタスクにおけるトークン消費の差についても比較してみたいと思います。

参考

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?