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:
- - INLINECODE7
- INLINECODE8
- INLINECODE9
- INLINECODE10
- INLINECODE11
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. Read
~/Library/Application Support/Tabbit/DevToolsActivePort first. - If that file does not exist, read
~/Library/Application Support/Tabbit Browser/DevToolsActivePort. - Use both lines in that file:
- line 1: TCP port
- line 2: browser path such as
/devtools/browser/<id>
- 4. 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/runagentbrowserontabbit.py for actual browser actions. It injects the live
wsEndpoint into agent-browser --cdp .... - Use scripts/discovertabbitcdp.py when you only need structured connection facts.
- 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/discovertabbitcdp.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/runagentbrowserontabbit.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. - 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
Tabbit Devtools
当请求明确涉及 Tabbit 或包含诸如 用我的 tabbit 浏览器、在 Tabbit 里、Tabbit 当前页 或 Tabbit 当前标签 等短语时,优先使用此技能。
将 Tabbit 视为基于 Chromium 的浏览器。
此技能涉及如何将 agent-browser 连接到 Tabbit。
连接建立后,通过常规的 agent-browser 工作流程处理浏览器自动化和检查。
不要在此技能内实现并行的浏览器自动化层、桥接守护进程或自定义 CDP 客户端。
agent-browser 快速参考
在 Tabbit 端点发现后,将 agent-browser 视为浏览器操作层。
此技能最相关的命令是:
- - open
- snapshot -i
- click @e3
- fill @e5
- press Enter
不要在此处重复完整的 agent-browser 手册。将这些命令用作 Tabbit 任务的默认词汇表,对于更广泛的命令集,请优先使用官方 README。
快速路径
- 1. 首先读取 ~/Library/Application Support/Tabbit/DevToolsActivePort。
- 如果该文件不存在,则读取 ~/Library/Application Support/Tabbit Browser/DevToolsActivePort。
- 使用该文件中的两行内容:
- 第1行:TCP 端口
- 第2行:浏览器路径,例如 /devtools/browser/
- 4. 构建完整的浏览器端点:ws://127.0.0.1:。
- 优先使用 wsEndpoint 而非 http://127.0.0.1:。Tabbit 可能暴露浏览器 WebSocket,而 /json/version 和 /json/list 仍返回 404。
- 对于实际的浏览器操作,优先使用 scripts/runagentbrowserontabbit.py。它将实时的 wsEndpoint 注入到 agent-browser --cdp ... 中。
- 当只需要结构化的连接信息时,使用 scripts/discovertabbitcdp.py。
- 连接后,使用完整的常规 agent-browser 工作流程进行页面操作。
工作流程
- 1. 对于 Tabbit 请求,首先直接读取 DevToolsActivePort 或运行 scripts/discovertabbitcdp.py。
- 返回代理实际需要的连接信息:activePortFile、port、browserPath、browserUrl 和 wsEndpoint。
- 除非用户明确要求仅获取端点详情,否则优先立即使用 scripts/runagentbrowserontabbit.py,使命令变为 agent-browser --cdp ...。
- 在此交接之后,遵循常规的 agent-browser 工作流程执行打开、快照、点击、填写和其他浏览器命令。
- 如果 agent-browser 不可用,请明确说明并展示连接信息,而不是创建自定义的 CDP 桥接。
指导原则
- - 此技能解决连接问题,而非通用的浏览器操作问题。
- 首先返回结构化的连接数据,然后附上简短的解释说明。
- 优先使用最轻量的发现路径:DevToolsActivePort 和由此派生的浏览器 WebSocket 端点。
- 首先搜索 macOS 的 Tabbit 支持目录,然后是 Tabbit Browser。
- 优先使用完整的 wsEndpoint 而非原始端口,因为 Tabbit 可能不暴露 HTTP 发现路由。
- 一旦通过 runagentbrowserontabbit.py 启动 Tabbit 任务,除非用户明确要求,否则继续使用相同的包装路径完成剩余任务。
- 连接后,所有其他操作均使用标准的 agent-browser 模式。
约束条件
- - 不要假设存在专用的 tabbit-devtools MCP 服务器。
- 不要假设通用的 chrome-devtools 会话可以重定向到 Tabbit。
- 不要将此技能变成 agent-browser 的替代品。
- 不要为连接后的浏览器操作创建自定义守护进程、长期运行的 CDP 代理或一次性 WebSocket 客户端。
- 不要承诺 chrome-devtools MCP 会自动接管 Tabbit。
- 如果在当前环境中无法启动 agent-browser,则在连接指导处停止并解释限制。
- 连接后,浏览器工作流程属于 agent-browser,而非此技能。
资源