tabbit-devtools

Use Tabbit with agent-browser by reading Tabbit's live DevToolsActivePort file, deriving the browser wsEndpoint, and routing browser actions through agent-browser --cdp.

tabbit-browser/tabbit-devtools-skill111 installsMITSynced Aug 26

Works with

Claude CodeCursorCodex CLIGitHub CopilotGemini CLI

Agent Skills format with YAML frontmatter. Claude Code reads it as-is.

---
name: "tabbit-devtools"
description: "Use Tabbit with agent-browser by reading Tabbit's live DevToolsActivePort file, deriving the browser wsEndpoint, and routing browser actions through agent-browser --cdp."
license: "MIT"
---

# 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

1. 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`
2. Use both lines in that file:
   - line 1: TCP port
   - line 2: browser path such as `/devtools/browser/<id>`
3. Build the full browser endpoint as `ws://127.0.0.1:<port><path>`.
4. 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`.
5. 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 ...`.
6. Use [scripts/discover_tabbit_cdp.py](scripts/discover_tabbit_cdp.py) when you only need structured connection facts.
7. Once connected, use the full normal `agent-browser` workflow for page operations.

## Workflow

1. For Tabbit requests, start by reading `DevToolsActivePort` directly or by running [scripts/discover_tabbit_cdp.py](scripts/discover_tabbit_cdp.py).
2. Return the connection facts the agent actually needs: `activePortFile`, `port`, `browserPath`, `browserUrl`, and `wsEndpoint`.
3. 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> ...`.
4. After that handoff, follow the normal `agent-browser` workflow for open, snapshot, click, fill, and other browser commands.
5. 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](references/setup.md)
- Endpoint discovery rules and environment variables: [references/discovery.md](references/discovery.md)
- Endpoint discovery helper: [scripts/discover_tabbit_cdp.py](scripts/discover_tabbit_cdp.py)
- agent-browser wrapper: [scripts/run_agent_browser_on_tabbit.py](scripts/run_agent_browser_on_tabbit.py)
- agent-browser upstream docs: https://github.com/vercel-labs/agent-browser

More General & Other skills

← All General & Other skills

Check your AI visibility

One URL in, a 0–100 score and the exact fixes out.

RUN THE CHECK

Browse all the tools

15 tools across six categories
13 of them never send your data anywhere

Free · No signup · No trial clock

SEE THE DIRECTORY