
Chromeflow
io.github.NeoDrew由 GitHub 帳號 NeoDrew 發布v0.9.5更新於 Oct 24, 2026
Lets Claude Code or Codex CLI drive your real Chrome — sessions intact, 28 browser tools.
概覽
讓 Claude Code 或 Codex CLI 透過配套擴充功能操控你已登入的真實 Chrome,提供點擊、填表、擷取憑證等瀏覽器工具。
- 可以做什麼
- 導覽與分頁:開啟頁面、列出分頁、切換分頁、捲動到指定元素
- 頁面互動:點擊元素、填寫單一或多個欄位、上傳檔案(含隱藏的檔案輸入框)
- 讀取頁面:擷取頁面文字、檢視表單欄位、讀取主控台記錄、執行任意 JavaScript
- 引導使用者:標示區域、等待使用者點擊、等待非同步變化
- 輸出擷取:擷取畫面、擷取終端機視窗、把擷取到的值寫入 .env 檔案
- 適用情境
- 適合需要在你已登入的網站(各式主控台、雲端服務、付款或驗證平台)內完成操作的情況,此時全新的無頭瀏覽器會卡在登入或兩步驗證。主要面向需要完成設定工作並把金鑰或 ID 複製進專案的程式設計代理。
- 執行需求
- 在桌上型電腦上以本機程序執行。需要 Claude Code 或 Codex CLI、Chrome 或其他 Chromium 瀏覽器、Node.js 22 以上版本,以及從應用程式商店安裝的配套 Chrome 擴充功能。外掛透過宿主內建的擴充套件市場指令安裝。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Chromeflow,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
Chromeflow
Let your AI coding agent (Claude Code or Codex CLI) drive your real Chrome — clicks, fills forms, grabs API keys, writes them to .env.
[Chrome Web Store] [Latest release] [MIT License] [GitHub stars] [Website]
Install · Tools · Website · Security
[Chromeflow demo — Claude Code driving real Chrome]
The problem: Playwright, Browser Use, and Puppeteer launch a fresh empty browser every time — no cookies, no sessions, no 2FA. Your AI agent gets stuck at the first login screen.
Chromeflow: drives your actual Chrome, where you're already logged into Stripe, AWS, Supabase, Canvas, GitHub. The agent automates what it can (clicks, fills, uploads, captures keys) and pauses for anything that needs you (passwords, 2FA, payment). One MCP server, 30 browser tools, works with both Claude Code and Codex CLI.
Battle-tested: shaped by 400+ hours of real agentic browser work before public release — every gnarly edge case (React Selects, isTrusted-gated forms, shadow-DOM clicks, page-CSP fetches, silent redirects, cookie leaks, 0×0 hidden elements) is in the error-handling recipes. Not a weekend hackathon project.
Why Chromeflow?
Existing browser automation tools (Playwright, Browser Use, Puppeteer) launch a fresh, empty browser — no cookies, no sessions, no extensions. Every time they start, you're logged out of everything and can't handle 2FA.
Chromeflow works in your actual Chrome browser, where you're already logged into Stripe, AWS, Supabase, and everything else. Claude automates what it can (clicking buttons, filling forms, uploading files) and pauses for anything that needs you (passwords, 2FA, payment details).
Validated platforms 🟢
Tested end-to-end against the live platform before every release. Procedures live in tests/antibot/platforms/; the validated-against page at chromeflow.run/validated auto-updates from tests/antibot/last-run.json on each run.
Submit handoff (by design). Reddit, X, LinkedIn, Facebook, Instagram all gate their submit buttons on a real isTrusted human gesture as part of their anti-bot stack. Chromeflow lands the typing path (which is what an agent actually needs) and then uses highlight_region + wait_for_click so the user clicks Submit themselves.
Why this is the moat. Playwright, Puppeteer, browser-use, crawl4ai all launch a fresh logged-out browser. They can't see your sessions, and the isTrusted-strict checks on these platforms reject their vanilla CDP clicks. Chromeflow runs in your real logged-in Chrome with a humanlike bezier + PointerEvent isPrimary=true click sequence; the validated-against table above shows what that gets you in practice. See /validated for the side-by-side comparison.
How it works
Chromeflow is two things that work together:
- MCP server — gives your coding agent (Claude Code or Codex) a set of browser tools (
open_page,click_element,fill_form,set_file_input,get_page_text,write_to_env, etc.) - Chrome extension — receives those commands and acts on the active tab (highlights, clicks, fills, uploads files, captures screenshots)
Claude drives the flow. You only touch the browser for things that genuinely need you — login, passwords, payment details, personal choices.
Setup
Claude Code
1. Install the plugin (one-time, machine-wide):
Run these inside Claude Code. The plugin registers the MCP server, pre-approves Chromeflow tools, and ships the usage skill — no per-project setup needed.
2. Install the Chrome extension (one time):
chromewebstore.google.com/detail/chromeflow/lkdchdgkbkodliefobkkhiegjdiidime — click Add to Chrome.
The extension persists across Chrome restarts. You only do this once.
3. Restart Claude Code.
That's it. Claude will automatically reach for Chromeflow whenever a task needs browser interaction, in any project. The plugin's SessionStart hook also cleans up any stale config left over from older npx chromeflow setup-based installs on first run.
Codex CLI
1. Install the plugin (one-time, machine-wide):
Then inside Codex:
The plugin registers the MCP server and ships the same usage skill that Claude Code uses, host-adjusted for Codex.
2. Install the Chrome extension (one time) — same Web Store link as above. The extension is host-agnostic and serves both Claude Code and Codex from the same install.
3. Restart Codex.
Codex will reach for Chromeflow on browser tasks the same way Claude Code does.
Usage
Just ask Claude normally:
"Set up Stripe for this project — create a product with monthly and annual pricing, capture the price IDs into .env"
"Go to Supabase and get my project's anon key and service role key"
"Help me configure SendGrid webhooks for this app"
Claude will navigate, highlight steps, click what it can, pause for anything sensitive, and write values to your .env automatically.
What Claude can do
File uploads
set_file_input uses Chrome DevTools Protocol to bypass the browser's file-input script restriction — the same mechanism used by Playwright and Puppeteer. It works even when the <input type=file> is hidden behind a custom drag-and-drop zone.
Terminal screenshots
capture_terminal screenshots the terminal window (Terminal, iTerm2, Warp, VS Code, Ghostty, etc.) and saves it as a PNG. Use this with set_file_input to upload terminal output to a web form.
Dedicated Claude window
Click the Chromeflow extension icon and use "Use this window for Claude" to lock Claude's browser operations to a specific Chrome window. This lets you freely use other Chrome windows without Claude interfering.
Running multiple agent sessions in parallel
Chromeflow supports up to 11 agent sessions (Claude Code, Codex, or a mix) running in parallel, each automating a different Chrome window without touching the others.
How it works:
- Each agent session spawns its own Chromeflow MCP server, which auto-discovers a free port in the range
7878-7888(first session gets 7878, second gets 7879, etc.). - The Chrome extension maintains one WebSocket connection per port and tracks per-port window assignments.
- Every browser tool call is routed to the Chrome window assigned to the port the request came in on.
Setup:
- Start your first agent session as normal — its Chromeflow will claim port 7878.
- Start a second agent session in another terminal — its Chromeflow auto-falls-back to 7879.
- Click the Chromeflow extension icon. The popup now shows one row per instance (Port 7878, Port 7879, ...) each with a green dot when live.
- In Chrome window A, open the popup and click "Use this window" next to Port 7878.
- Switch to window B, open the popup, and click "Use this window" next to Port 7879.
That's it. Each session now drives its own Chrome window — you can run a research task in one window while the other session fills out a Stripe dashboard in another, with zero collision.
Single-instance usage is unchanged and fully backwards compatible — the old per-window assignment is auto-migrated on first load.
Adding to another project
Nothing to do — the plugin install above is machine-wide. Open any project and Chromeflow is ready.
Upgrading
In Claude Code:
In Codex:
Restart the host afterward to pick up the new MCP server binary the plugin ships.
Migrating from the old npx chromeflow setup flow
If you previously installed Chromeflow via npx chromeflow setup, do nothing — install the plugin (Setup step 1 above) and the plugin's first SessionStart cleans up:
- The stale
mcpServers.chromeflowentry in~/.claude.json - Any leftover
## Chromeflowsection in~/.claude/CLAUDE.md
Per-project CLAUDE.md files and .claude/settings.local.json allowlists are left alone — they may have content you want to keep, so the plugin won't touch them. You can delete the # Chromeflow — Claude Instructions section from each project's CLAUDE.md by hand whenever it's convenient (the plugin's skill carries the same content now), or just leave it.
Development
The MCP server source lives at packages/mcp-server/src/ and is bundled with esbuild into packages/plugin/server/chromeflow.mjs — a single-file ESM binary the plugin ships directly.
Iterate locally by pointing the plugin at this checkout. In Claude Code:
In Codex:
Rebuild the bundle after editing MCP server source, then /reload-plugins (Claude Code) or restart the host (Codex) to pick it up.
The Chrome extension lives at packages/extension/:
After rebuilding the extension, reload it from chrome://extensions.
Requirements
- Claude Code or Codex CLI
- Chrome (or any Chromium browser)
- Node.js 22+
來源:README.md,提交 bf8cf17
工具
0版本歷史
1- v0.9.5最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分
