Tabbit-Browser/dsh-tabbit 预览 preview

Tabbit-Browser/dsh-tabbit

桌面端Desktop 原生Native ⭐ 97 自动化Automation浏览器Browser生态Ecosystem

Tabbit Browser plugins for Deepseek Harness

项目介绍Project Overview

DSH 插件 tabbit-browser 让代理通过 tabbit-cli 控制本地 Tabbit Browser,执行真实页面、登录态与交互的网页自动化。核心能力:内置 skill 提供定位、等待、截图与任务空间,并含环境检测与版本更新工具。适用于网页自动化、信息提取、QA 与基准测试。安装需 Tabbit Browser ≥1.9.0;Windows 受限令牌无法连接运行时管道时需切到完全权限。E2B 或远程容器等沙箱环境无法访问本地 GUI 浏览器时不可用。

The tabbit-browser DSH plugin lets the agent control a local Tabbit Browser via tabbit-cli, performing web automation on real pages with real login state. Core capability: an auto-loaded skill with persistent task spaces, locators, waits, and screenshots, plus tools for environment preflight and plugin updates. Use it for web automation, information extraction, QA, and benchmarks. Requirements: Tabbit Browser version 1.9.0 or newer, and DSH running on the same host as the browser. On Windows, restricted sandbox tokens cannot reach the Runtime named pipe, so the skill asks the user to switch to Full Permission when needed. The skill does not work inside remote or sandboxed shells such as E2B that cannot reach the local GUI browser. Native tools like tabbit_browser_evaluate are not provided.

或使用命令行安装(适合开发者)Or use CLI install (for developers)

命令行安装CLI Install

dsh plugin --profile web add dsh-tabbit

Tabbit-Browser/dsh-tabbit 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

tabbit-browser for DeepSeek Harness

English | 简体中文

Tabbit Browser for DeepSeek Harness

A plugin for DeepSeek Harness (DSH) that gives the agent control over your Tabbit Browser: real pages, real login state, and real interactions, driven through tabbit-cli — the task-isolated Playwright CLI owned by the browser itself. Use it for web automation, information extraction, QA, and benchmarks.

What you get

Component Description
tabbit-browser skill The working guide for browser automation: persistent task spaces, locators and waits, screenshots, receipts and recovery. Discovered and loaded automatically with the plugin — no separate skill install. The model loads it via skill({ name: "tabbit-browser" }) or /tabbit-browser.
tabbit_browser_install tool Environment preflight: detects installed stable Tabbit editions, requires version 1.9.0 or newer, and verifies the tabbit-cli resident runtime. When Tabbit is missing or outdated, it starts a DSH background job that downloads the region-appropriate installer.
tabbit_plugin_update tool Plugin update check: compares the installed plugin version with the published changelog at most once a day, silently skips offline failures, and records a version the user declined. When a newer release exists, the skill loads with an update notice showing what the new version added.

Installation

1. Check or install DeepSeek Harness

Check whether DSH is already installed:

dsh --version

If the command prints a version number, continue to the next step. If it is not found, install it for your operating system.

macOS

Install Node.js 20 or newer, then install DSH:

brew install node
npm install -g @deepseek-ai/dsh

Windows

Install Node.js LTS in PowerShell:

winget install OpenJS.NodeJS.LTS

Reopen PowerShell after the installation, then install DSH:

npm install -g @deepseek-ai/dsh

Run dsh --version again to confirm DSH works.

2. Install the tabbit-browser plugin

dsh plugin --profile web add dsh-tabbit

This installs the npm package (prebuilt tarball, CDN-served). If the npm registry is unreachable, fall back to the GitHub source:

dsh plugin --profile web add github:Tabbit-Browser/dsh-tabbit

3. Start DSH

dsh web

How it works

After installation, the bundle automatically registers its skill provider. The model loads the skill via skill({ name: "tabbit-browser" }) or /tabbit-browser. Before the first browser operation in a task, the skill calls tabbit_browser_install:

  • ready — a stable Tabbit edition at 1.9.0 or newer is installed and the runtime is running; the agent continues with the tabbit-cli workflow.
  • restart-required — the installed version is sufficient, but the tabbit-cli runtime is not running; the user is asked to restart Tabbit Browser once.
  • background — no stable edition is installed, or none reaches 1.9.0; the tool starts a DSH background job that reads the operating system's configured region (macOS reads the system locale, Windows calls the system region API) and downloads the matching stable installer: the domestic build from tabbit.com for mainland China, or the international build from tabbit.ai for every other or unknown region. It selects the right Windows x64, macOS Apple Silicon, or macOS Intel package, saves it to the user's Downloads folder, reports download progress, and notifies the absolute installer path on completion.

The environment check also:

  • Treats the runtime as available when multiple Tabbit instances are running; the agent sets TABBIT_PLAYWRIGHT_INSTANCE from the CLI's hint instead of reporting the instance ambiguity as an unavailable runtime.
  • Diagnoses the DSH sandbox mode required to invoke the CLI on the current platform: Windows reports cliSandboxMode: danger-full-access, other platforms report default.
  • Caches a successful environment check per agent session and re-checks only after a Runtime/launcher failure or an installation change, via refresh: true.

Requirements

  • A stable Tabbit Browser at version 1.9.0 or newer: either the international Tabbit or the domestic Tabbit Browser — installing either one is enough. If it is missing or outdated, the plugin downloads the installer for you.
  • The current DSH profile provides ctx.skills, ctx.tools, and ctx.jobs together with the corresponding model tools.
  • dsh-tool-jobs provides background job control and completion notifications for the current agent.
  • The current DSH profile provides a Bash/Shell tool running on the same host machine as Tabbit Browser.
  • The shell's execution environment can reach the Browser-owned Runtime Service.
  • On Windows, DSH's read-only and workspace-write restricted tokens cannot write to the Runtime named pipe. The skill first runs the normal tabbit-cli tasks connection probe and requests no permission at all when it succeeds. Only when the Browser, launcher, and Runtime processes are all detected but the connection returns BROWSER_RUNTIME_UNAVAILABLE does it ask the user to switch the current DSH session to Full Permission — and it then stops the task immediately, without retrying or continuing browser operations.

Notes and limitations

  • Mainland China uses the domestic tabbit.com download source; all other regions use the international tabbit.ai source.
  • The background download reports progress and notifies the absolute installer path when it finishes. It never opens the .dmg/.exe automatically.
  • Development builds are not detected.
  • The plugin does not provide native browser tools such as tabbit_browser_evaluate.
  • If DSH's Bash runs in a sandbox such as E2B or a remote container that cannot access the local GUI browser, this skill cannot make Tabbit automation work there.

Development

npm test
npm pack --dry-run

License

MIT

上一个 Prev dsh-auto-review 下一个 Next dsh-annotation