AIエージェントブラウザは、自律型エージェント向けに作られたクラウドブラウザです。実行のたびに、同じデバイスフィンガープリント、同じレジデンシャルプロキシ、同じCookieを使います。実際のブラウザでクリック、入力、アップロードを行い、来週の実行もログイン済みの状態から始まります。
無料で開始 · 時間単位の定額 · レジデンシャルプロキシ込み · 超過分は$1/GB
Cookie、デバイスフィンガープリント、レジデンシャルIPが毎回1つのアイデンティティとして戻るため、サイトからは40回目の実行も1回目と同じ再訪ユーザーに見えます。
エージェントが一度ログインし、人がライブセッションで認証コードを入力して、プロファイルが保存されます。
同じデバイス、同じIPアドレス、同じアカウント。ログイン画面は出ず、人に引き継ぐ作業もありません。
何も変わっていません。最初から最後まで、1つのアカウントが一貫した1台のデバイスで動きます。
仕組みを知りたいですか?プロファイルの接続方法を読み、最初のプロファイルを作成しましょう。
ストレージ、デバイス、IP、セッションの長さについて、各ベンダーの公式ドキュメントに書かれている内容です。
| プロファイルが保持するもの | Browserbase | Browser Use | Steel | Kernel | |
|---|---|---|---|---|---|
| Cookieとローカルストレージ | あり | あり | あり | あり | あり |
| セッションストレージ、IndexedDB | あり | あり | 公開情報なし | IndexedDB | 公開情報なし |
| デバイスフィンガープリント | あり | 公開情報なし | セッションごとに新規 | ユーザーエージェントのみ | 公開情報なし |
| IPアドレス | あり | なし | なし | 有料オプション | なし |
| プロファイルの保持 | 削除するまで | 削除するまで | 公開情報なし | 未使用30日まで | 公開情報なし |
| 最長セッション | 制限なし | 6時間 | 4時間 | 24時間 | 72時間 |
1つのプロファイルに1つのアイデンティティ。フィンガープリント、ユーザーエージェント、Cookieを、部品の寄せ集めではなくまとめて返します。
ご自身の環境で確かめてください。Cloud Browserのプロファイルが保持する内容を読み、Profiles APIをご覧ください。
Claudeに何でも頼めます。ページが変わっても、エージェントが新しい手順を見つけ、その修正を記録します。
自分で構築しますか?agent browser CLIをご覧いただくか、MCPサーバーを設定してClaudeに操作を任せましょう。
同じセッションがCDP経由でPlaywright、Puppeteer、Pythonの背後にあるため、ブラウザ自動化のコードをそのまま使えます。以下のタブはすべて、記載どおりにGologin Cloud Browser上で実行済みです。
Googleでサインアップし、ダッシュボードからキーをコピーします。無料、カード不要です。
ダッシュボードでワンクリック、またはAPI呼び出し1回で作成できます。プロファイルにはデバイス、IP、ログイン情報が保存されます。
ライブラリをインストールし、トークンとプロファイルIDを指定して下のスクリプトを実行します。Claudeに操作を任せたい場合は、MCPサーバーを設定してください。詳しくはスタートガイドをご覧ください。
npm install playwright-coreGOLOGIN_TOKEN=your_token GOLOGIN_PROFILE_ID=your_profile_id node scrape.mjswss://cloudbrowser.gologin.com/connect?token=…&profile=…import { chromium } from "playwright-core";
const token = process.env.GOLOGIN_TOKEN;
const profileId = process.env.GOLOGIN_PROFILE_ID;
const endpoint = `wss://cloudbrowser.gologin.com/connect?token=${token}&profile=${profileId}`;
const browser = await chromium.connectOverCDP(endpoint);
const page = await browser.contexts()[0].newPage();
await page.goto("http://quotes.toscrape.com/scroll");
await page.waitForSelector(".quote");
for (let i = 0; i < 30; i++) {
const before = await page.locator(".quote").count();
await page.evaluate(() => window.scrollTo(0, document.body.scrollHeight));
try {
await page.waitForFunction(
(n) => document.querySelectorAll(".quote").length > n,
before,
{ timeout: 3000 }
);
} catch {
break;
}
}
const quotes = await page.$$eval(".quote", (els) =>
els.map((el) => ({
text: el.querySelector(".text")?.textContent,
author: el.querySelector(".author")?.textContent,
}))
);
console.log(quotes.length, quotes[0]);
await page.close();
await browser.close();npm install puppeteer-coreGOLOGIN_TOKEN=your_token GOLOGIN_PROFILE_ID=your_profile_id node scrape.mjswss://cloudbrowser.gologin.com/connect?token=…&profile=…import puppeteer from "puppeteer-core";
const token = process.env.GOLOGIN_TOKEN;
const profileId = process.env.GOLOGIN_PROFILE_ID;
const endpoint = `wss://cloudbrowser.gologin.com/connect?token=${token}&profile=${profileId}`;
const browser = await puppeteer.connect({ browserWSEndpoint: endpoint });
const page = await browser.newPage();
await page.goto("http://quotes.toscrape.com/scroll");
await page.waitForSelector(".quote");
for (let i = 0; i < 30; i++) {
const before = await page.$$eval(".quote", (els) => els.length);
await page.evaluate(() => window.scrollTo(0, document.body.scrollHeight));
try {
await page.waitForFunction(
(n) => document.querySelectorAll(".quote").length > n,
{ timeout: 3000 },
before
);
} catch {
break;
}
}
const quotes = await page.$$eval(".quote", (els) =>
els.map((el) => ({
text: el.querySelector(".text")?.textContent,
author: el.querySelector(".author")?.textContent,
}))
);
console.log(quotes.length, quotes[0]);
await page.close();
await browser.disconnect();pip install playwrightGOLOGIN_TOKEN=your_token GOLOGIN_PROFILE_ID=your_profile_id python scrape.pywss://cloudbrowser.gologin.com/connect?token=…&profile=…import os
from playwright.sync_api import sync_playwright, TimeoutError as PlaywrightTimeoutError
token = os.environ["GOLOGIN_TOKEN"]
profile_id = os.environ["GOLOGIN_PROFILE_ID"]
endpoint = f"wss://cloudbrowser.gologin.com/connect?token={token}&profile={profile_id}"
with sync_playwright() as p:
browser = p.chromium.connect_over_cdp(endpoint)
page = browser.contexts[0].new_page()
page.goto("http://quotes.toscrape.com/scroll")
page.wait_for_selector(".quote")
for _ in range(30):
before = page.locator(".quote").count()
page.evaluate("window.scrollTo(0, document.body.scrollHeight)")
try:
page.wait_for_function(
"n => document.querySelectorAll('.quote').length > n",
arg=before,
timeout=3000,
)
except PlaywrightTimeoutError:
break
quotes = page.eval_on_selector_all(
".quote",
"els => els.map(el => ({text: el.querySelector('.text')?.textContent, author: el.querySelector('.author')?.textContent}))",
)
print(len(quotes), quotes[0])
page.close()
browser.close()すべてのセッションにライブURLがあります。開けば、どれだけ長く動いていても、エージェントが操作しているブラウザの中に入れます。
ライブURLを開けば、同じブラウザ、同じCookie、同じIPアドレスの中にいます。手順を終えてタブを閉じれば、実行はそのまま続きます。
引き継ぎはサポートチケットではなく、API呼び出し1回です。どのタイミングでも、どのライブセッションでも、再起動も再ログインも不要です。
ライブセッションを自社のダッシュボードに埋め込めます。ユーザーは製品から離れずに、ログイン済みのブラウザを操作できます。
組み込みますか?Live Viewのドキュメントを読むか、Cloud Browser UIをご覧ください。
実際のエージェントの作業では、トラフィックが請求書で最も大きな項目になり、ベンダーが料金ページに最後に載せる項目でもあります。
請求書の項目は2つだけ。
どちらも料金ページに記載。
課金はブラウザ時間と、付与量を超えたトラフィック($1/GB)です。アイドル状態のセッションは、課金を続けずに20分後に自動で終了します。
レジデンシャルトラフィック50GBの料金
各ベンダーが公開している最安料金
エントリープランの場合:Steel $500、Browserbase $600。
どのプランでも同じブラウザが動き、レジデンシャルIPが含まれます。プランの違いは、ブラウザ時間と並列セッション数です。
$0
カード不要
$4.50/月
個人開発者向け
$8/月
成長中のチーム向け
$14/月
重要な業務向け
同時にもっと必要ですか?並列セッションは、どのプランにも1つにつき月$2で必要なだけ追加できます。付与量を超えたプロキシトラフィックは$1/GBです。
4並列セッションから。専任のアカウントマネージャー、プレミアムSLA、個別のオンボーディング付き。
1つのアカウント、1つのプロキシネットワーク、1つのエコシステム。用途に合った製品をお選びください。
ブラウザを自律型エージェントの手として使うことです。クリック、入力、アップロード、ページ間の移動を行い、1つのブラウザプロファイルが実行をまたいでCookie、デバイスフィンガープリント、レジデンシャルIPを保持します。どの実行も同じ状態から始まります。
サイト自体のログインが続く限りです。プロファイルは同じCookie、同じデバイス、同じIPで戻るため、セッションは中断したところから再開します。ログインが切れるのはサイト側が期限切れにしたときで、当社が切ることはありません。
作業に必要なだけです。アクティブなセッション時間に上限はないため、9時間の実行も再接続の連続ではなく、1つのセッションで済みます。20分間アイドル状態のセッションは自動で終了するので、誰も操作していないブラウザに料金を払うことはありません。
すべてのセッションにライブURLがあります。開けば、エージェントが操作しているブラウザの中に、同じページ、同じセッションで入れます。その手順を手動で終えれば、実行は次の手順から続きます。URLはダッシュボードまたはAPIから取得できます。
はい。ライブセッションのURLは埋め込みできるため、ユーザーはアプリを離れずにログイン済みのブラウザを操作でき、リモートブラウザを自前で構築する必要もありません。
はい。セッションはCDPで接続するため、PlaywrightやPuppeteerを操作するものなら、1行変えるだけでGologinのセッションを操作できます。セレクター、待機処理、アサーション、CIはそのままです。ドライバーのコードを書きたくない場合は、MCPサーバーまたはagent browser CLIをお使いください。
はい。agent browser CLIは、壊れやすいセレクターではなくページ参照に対して、snapshot、click、type、fill、screenshot、PDF、uploadを提供します。エージェントは欲しいものを伝えるだけで、その要素を取得できます。
Gologinのプロファイル、プロキシ、クラウドセッションを、アシスタントが直接呼び出せるツールに変えます。SDKを組み込まなくても、ClaudeやCursorがプロファイルを作成し、プロキシを追加し、セッションを開始できます。MCPサーバー、CLI、通常のCDP接続の背後にあるのは同じセッションです。複数アカウントでのLinkedInアウトリーチには、専用のLinkedIn MCPがあります。
はい。レジデンシャルIPはセッションに含まれています。Gologin ProxiesのモバイルIPはAPI呼び出し1回でプロファイルに追加でき、自前のプロキシも同じ方法で追加できます。セッションは、プロファイルに設定されたものを使います。
ライブセッションを開いてその手順を自分で完了すれば、エージェントがその後を続けます。セッションではなくページだけが必要なら、Web Unlockerがレンダリング済みの公開ページを返し、課金は成功時のみです。
アカウントが不要な作業のときです。公開ページを1回取得するだけなら、ログイン状態を保つ対象がないため、Web UnlockerがURLを受け取ってレンダリング済みのページを返し、課金は成功時のみです。アカウントを扱う作業、つまり2回目の実行でも100回目の実行でもログインしている必要がある作業には、Cloud Browserを使います。
For us it came down to two. Beacon Labs is the only one that kept up when we scaled past 40 client accounts, so that is where the budget went.
▲ 128ReplyShare