Tabbit Devtools
Prefer this skill whenever the request is explicitly about Tabbit or includes phrases like 用我的 tabbit 浏览器, 在 Tabbit 里, Tabbit 当前页, or Tabbit 当前标签.
Treat Tabbit as a Chromium-based browser.
This skill is about how to connect agent-browser to Tabbit.
After the connection is established, handle browser automation and inspection through the normal agent-browser workflow.
Do not implement a parallel browser automation layer, bridge daemon, or custom CDP client inside this skill.
agent-browser Quick Reference
Treat agent-browser as the browser-operation layer after Tabbit endpoint discovery.
The most relevant commands for this skill are:
open <url>
snapshot -i
click @e3
fill @e5 <text>
press Enter
Do not restate a full agent-browser manual here. Use these commands as the default vocabulary for Tabbit tasks, and prefer the official README for any broader command surface.
Quick Path
- Detect the platform and search for
DevToolsActivePort:
- macOS:
~/Library/Application Support/Tabbit/DevToolsActivePort first, then ~/Library/Application Support/Tabbit Browser/DevToolsActivePort
- Windows:
%LOCALAPPDATA%\Tabbit Browser\User Data\DevToolsActivePort first, then %APPDATA%\Tabbit\User Data\DevToolsActivePort
- Use both lines in that file:
- line 1: TCP port
- line 2: browser path such as
/devtools/browser/<id>
- Build the full browser endpoint as
ws://127.0.0.1:<port><path>.
- Prefer that
wsEndpoint over http://127.0.0.1:<port>. Tabbit may expose the browser WebSocket while /json/version and /json/list still return 404.
- Prefer scripts/run_agent_browser_on_tabbit.py for actual browser actions. It injects the live
wsEndpoint into agent-browser --cdp ....
- Use scripts/discover_tabbit_cdp.py when you only need structured connection facts.
- Once connected, use the full normal
agent-browser workflow for page operations.
Workflow
- For Tabbit requests, start by reading
DevToolsActivePort directly or by running scripts/discover_tabbit_cdp.py.
- Return the connection facts the agent actually needs:
activePortFile, port, browserPath, browserUrl, and wsEndpoint.
- Unless the user explicitly asks only for endpoint details, prefer scripts/run_agent_browser_on_tabbit.py immediately so the command becomes
agent-browser --cdp <wsEndpoint> ....
- After that handoff, follow the normal
agent-browser workflow for open, snapshot, click, fill, and other browser commands.
- If
agent-browser is unavailable, say so plainly and surface the connection facts instead of inventing a custom CDP bridge.
Guidance
- This skill solves the connection problem, not the general browser-operation problem.
- Return structured connection data first, then any short explanatory note.
- Prefer the lightest possible discovery path:
DevToolsActivePort and the derived browser WebSocket endpoint.
- Search the macOS
Tabbit support directory first, then Tabbit Browser. On Windows, search %LOCALAPPDATA%\Tabbit Browser\User Data first, then %APPDATA%\Tabbit\User Data.
- Prefer the full
wsEndpoint over a raw port because Tabbit may not expose HTTP discovery routes.
- Once a Tabbit task has started through
run_agent_browser_on_tabbit.py, keep using that same wrapper path for the rest of the task unless the user explicitly asks otherwise.
- Once connected, use standard
agent-browser patterns for everything else.
Constraints
- Do not assume a dedicated
tabbit-devtools MCP server exists.
- Do not assume the generic
chrome-devtools session can be retargeted to Tabbit.
- Do not turn this skill into a replacement for
agent-browser.
- Do not create a custom daemon, long-lived CDP proxy, or one-off WebSocket client for post-connection browser actions.
- Do not promise that
chrome-devtools MCP will automatically take over Tabbit.
- If
agent-browser cannot be launched in the current environment, stop at connection guidance and explain the limitation.
- After connection, the browser workflow belongs to
agent-browser, not to this skill.
Resources
- Setup and direct-connection notes: references/setup.md
- Endpoint discovery rules and environment variables: references/discovery.md
- Endpoint discovery helper: scripts/discover_tabbit_cdp.py
- agent-browser wrapper: scripts/run_agent_browser_on_tabbit.py
- agent-browser upstream docs: https://github.com/vercel-labs/agent-browser
1---2name: tabbit-devtools3description: Use Tabbit with agent-browser by reading Tabbit's live DevToolsActivePort file, deriving the browser wsEndpoint, and routing browser actions through agent-browser --cdp.4---56# Tabbit Devtools78Prefer this skill whenever the request is explicitly about Tabbit or includes phrases like `用我的 tabbit 浏览器`, `在 Tabbit 里`, `Tabbit 当前页`, or `Tabbit 当前标签`.910Treat Tabbit as a Chromium-based browser.11This skill is about how to connect `agent-browser` to Tabbit.12After the connection is established, handle browser automation and inspection through the normal `agent-browser` workflow.13Do not implement a parallel browser automation layer, bridge daemon, or custom CDP client inside this skill.1415## agent-browser Quick Reference1617Treat `agent-browser` as the browser-operation layer after Tabbit endpoint discovery.1819The most relevant commands for this skill are:2021- `open <url>`22- `snapshot -i`23- `click @e3`24- `fill @e5 <text>`25- `press Enter`2627Do not restate a full `agent-browser` manual here. Use these commands as the default vocabulary for Tabbit tasks, and prefer the official README for any broader command surface.2829## Quick Path30311. Detect the platform and search for `DevToolsActivePort`:32 - macOS: `~/Library/Application Support/Tabbit/DevToolsActivePort` first, then `~/Library/Application Support/Tabbit Browser/DevToolsActivePort`33 - Windows: `%LOCALAPPDATA%\Tabbit Browser\User Data\DevToolsActivePort` first, then `%APPDATA%\Tabbit\User Data\DevToolsActivePort`342. Use both lines in that file:35 - line 1: TCP port36 - line 2: browser path such as `/devtools/browser/<id>`373. Build the full browser endpoint as `ws://127.0.0.1:<port><path>`.384. Prefer that `wsEndpoint` over `http://127.0.0.1:<port>`. Tabbit may expose the browser WebSocket while `/json/version` and `/json/list` still return `404`.395. Prefer [scripts/run_agent_browser_on_tabbit.py](scripts/run_agent_browser_on_tabbit.py) for actual browser actions. It injects the live `wsEndpoint` into `agent-browser --cdp ...`.406. Use [scripts/discover_tabbit_cdp.py](scripts/discover_tabbit_cdp.py) when you only need structured connection facts.417. Once connected, use the full normal `agent-browser` workflow for page operations.4243## Workflow44451. For Tabbit requests, start by reading `DevToolsActivePort` directly or by running [scripts/discover_tabbit_cdp.py](scripts/discover_tabbit_cdp.py).462. Return the connection facts the agent actually needs: `activePortFile`, `port`, `browserPath`, `browserUrl`, and `wsEndpoint`.473. Unless the user explicitly asks only for endpoint details, prefer [scripts/run_agent_browser_on_tabbit.py](scripts/run_agent_browser_on_tabbit.py) immediately so the command becomes `agent-browser --cdp <wsEndpoint> ...`.484. After that handoff, follow the normal `agent-browser` workflow for open, snapshot, click, fill, and other browser commands.495. If `agent-browser` is unavailable, say so plainly and surface the connection facts instead of inventing a custom CDP bridge.5051## Guidance5253- This skill solves the connection problem, not the general browser-operation problem.54- Return structured connection data first, then any short explanatory note.55- Prefer the lightest possible discovery path: `DevToolsActivePort` and the derived browser WebSocket endpoint.56- Search the macOS `Tabbit` support directory first, then `Tabbit Browser`. On Windows, search `%LOCALAPPDATA%\Tabbit Browser\User Data` first, then `%APPDATA%\Tabbit\User Data`.57- Prefer the full `wsEndpoint` over a raw port because Tabbit may not expose HTTP discovery routes.58- Once a Tabbit task has started through `run_agent_browser_on_tabbit.py`, keep using that same wrapper path for the rest of the task unless the user explicitly asks otherwise.59- Once connected, use standard `agent-browser` patterns for everything else.6061## Constraints6263- Do not assume a dedicated `tabbit-devtools` MCP server exists.64- Do not assume the generic `chrome-devtools` session can be retargeted to Tabbit.65- Do not turn this skill into a replacement for `agent-browser`.66- Do not create a custom daemon, long-lived CDP proxy, or one-off WebSocket client for post-connection browser actions.67- Do not promise that `chrome-devtools` MCP will automatically take over Tabbit.68- If `agent-browser` cannot be launched in the current environment, stop at connection guidance and explain the limitation.69- After connection, the browser workflow belongs to `agent-browser`, not to this skill.7071## Resources7273- Setup and direct-connection notes: [references/setup.md](references/setup.md)74- Endpoint discovery rules and environment variables: [references/discovery.md](references/discovery.md)75- Endpoint discovery helper: [scripts/discover_tabbit_cdp.py](scripts/discover_tabbit_cdp.py)76- agent-browser wrapper: [scripts/run_agent_browser_on_tabbit.py](scripts/run_agent_browser_on_tabbit.py)77- agent-browser upstream docs: https://github.com/vercel-labs/agent-browser