dsh-browser-bridge:在 DSH 裏驅動已打開的 Edge/Chrome

前言

在 DeepSeek Harness(DSH)裏做網頁相關任務時,常見做法是另開帶調試端口的瀏覽器,或讓 Playwright、Puppeteer 拉起一個「乾淨實例」。調試端口只能在瀏覽器啓動時打開;已經開着的、帶着登錄態和 Cookie 的那一扇窗口,往往接不進去。結果是:要麼重啓瀏覽器丟狀態,要麼 AI 只能口頭告訴你「應該點哪裏」,卻不能在你正在用的標籤頁上動手。

下面介紹社區插件 dsh-browser-bridge(維護者 xkzm123)。它走 Windows UI Automation、SendInput,以及可選的油猴(Tampermonkey)用戶腳本橋,在不重啓瀏覽器、不依賴 CDP 的前提下,讓 DSH 會話直接操作本機已運行的 Edge/Chrome。插件歸類爲「客戶端」,僅支持 Windows;許可證爲 MIT。DSH 生態強調「一切皆插件」,目錄頁託管在 SkillHub 等社區站點,與 DeepSeek / 幻方無官方從屬關係。

這是什麼

一句話:裝好之後,你可以在 DSH 裏說「幫我點那個按鈕」,它去點屏幕上真的那個瀏覽器——不是另開空白實例,就是你正在用的窗口。

官方簡介:Drive your already-running Edge/Chrome from a DeepSeek Harness session — no restart, no CDP. UIA + SendInput + userscript bridge.

核心功能

能做什麼

你說的話(示例) 插件側行爲
「看看我瀏覽器現在開着什麼」 列出窗口與標籤(如 browser_windows)
「把這個頁面的正文念給我聽」 抽取可見文字
「把那個登錄按鈕點了」 按無障礙名稱找到控件並真實點擊
「搜索框裏填上內容,回車」 聚焦輸入框、輸入(含中文)、按鍵
「把頁面上所有鏈接收集起來」 返回鏈接地址

操作對象是你已登錄的瀏覽器;需要登錄或會員才能看到的內容,在本地窗口內可讀,無需把賬號交給第三方服務。

工具數量與油猴

  • 只裝 DSH 插件:14 個工具,覆蓋讀頁、點按、輸入、滾動、截圖、切標籤等日常操作。
  • 再裝油猴腳本(倉庫內 bridge/bridge.user.js):共 22 個工具;多出的 6 個依賴頁面內橋,包括 browser_click_text、browser_page_query、browser_wait_for、browser_batch、browser_run_js、browser_bridge。

成本與性能設計

文檔按「先用最便宜的手段,不夠再升級」組織證據鏈:

  1. 純文本:browser_page_query / browser_get_text
  2. 更大文本快照:browser_snapshot(需要元素名與位置時)
  3. 截圖:browser_screenshot(佈局、canvas 或明確要求看圖時)

browser_wait_for 在頁面內輪詢等待元素;browser_batch 可在同一 PowerShell 進程裏連跑多條 bctl 命令;browser_click_text 點擊後順帶回報元素狀態,減少再查一輪的開銷。

硬約束(不會做的事)

不做 原因(文檔說明)
默認不關閉瀏覽器或標籤 關閉類快捷鍵需顯式 allowClose;誤關最後一窗可能導致「進程在、窗口無」的異常狀態
不點瀏覽器 chrome 區按鈕 點擊範圍限於網頁內容(無障礙樹 Document 子樹)
不啓動瀏覽器 無窗口則報錯,由用戶自行打開 Edge/Chrome

動作審計可查看用戶目錄下的 audit 日誌;可用 bctl.ps1 audit tail 20 排查。

安裝與啓用

環境要求:Windows 10 / 11(package.json 中 os 爲 win32)。無需爲本插件單獨安裝 Python 或 Node 運行時來「驅動瀏覽器」;裝完 DSH 插件後重啓 DSH 即可加載。

第一步:安裝插件

在 PowerShell 中執行(web 爲你的 DSH profile 名,多數人可直接使用 web;不確定時可查看 C:\Users\你\.dsh\profiles\ 下文件夾名):

dsh plugin --profile web add github:xkzm123/dsh-browser-bridge

使用 DSH 桌面版時,也可在 設置 → 插件 中搜索 dsh-browser-bridge 安裝,無需命令行。

安裝成功時終端可能顯示類似:

+ dsh-browser-bridge 1.3.0
Done in 5.1s

(具體版本號以安裝輸出爲準;倉庫 README 徽章與 package.json 中的版本字段可能不同步,以你本機安裝結果爲準。)

第二步:重啓 DSH

插件在 DSH 啓動時加載。dsh web 用戶需結束當前進程後重新執行 dsh web;桌面版需退出再打開。瀏覽器無需重啓,標籤與登錄狀態保留。

第三步:驗證

在對話中說:

看看我瀏覽器現在開着什麼

若返回帶 pid、瀏覽器類型與標題的窗口列表,且當前目標窗口前有 *,說明基本可用。

也可用配置 dump 確認插件已註冊:

dsh --profile web --dump-config | Select-String -Context 0,3 browser-bridge

應能看到 - id: dsh-browser-bridge 等行。

可選:油猴腳本

不裝腳本也能用 14 個工具;需要按文字點擊、頁面內批量、等待元素、執行任意 JS 或啓動本地橋時,建議安裝 Tampermonkey 並導入用戶腳本。

安裝腳本

方式 A(推薦):在瀏覽器地址欄打開:

https://raw.githubusercontent.com/xkzm123/dsh-browser-bridge/main/bridge/bridge.user.js

Tampermonkey 會識別 .user.js 並彈出安裝頁。確認腳本名、作者 xkzm123、源地址與「包含 URL」爲 *://*/* 後安裝。

方式 B:網絡無法訪問 raw 時,從倉庫打開 bridge/bridge.user.js 的 Raw,複製全文到 Tampermonkey 新建腳本並保存。

方式 C:插件橋服務已運行時,可訪問 http://127.0.0.1:8737/install.user.js(依賴本機服務與默認端口)。

若修改了插件配置中的 bridgePort(cordis.patch.yml),腳本內 const PORT = 8737; 需一致後重新安裝。

啓動橋並驗證

C:\Users\你\.dsh\profiles\web\node_modules\dsh-browser-bridge\scripts\bctl.ps1 bridge start

看到 bridge running on port 8737 表示本地橋在 127.0.0.1 監聽。也可在對話中說「啓動瀏覽器橋」,由 browser_bridge 拉起。

任意網頁打開後,可說「等頁面的搜索框出現(最多 10 秒)」;若返回含 "found": true 的 JSON,說明插件與腳本通路正常。

Tampermonkey 擴展安裝鏈接見倉庫 README(Edge / Chrome 商店或 tampermonkey.net 手動安裝 crx)。

典型用法

README 中給出的任務鏈示例(零截圖路徑):

1. browser_navigate        打開搜索頁
2. browser_wait_for        等結果列表出現
3. browser_page_query      取標題+鏈接,按標題挑選
4. browser_batch           點進去 + 點贊 + 取色驗證
5. 完成                     狀態從返回值可見

日常口語指令與上表「能做什麼」一致;複雜站點可在裝油猴後使用 browser_batch 的 steps 模式在頁面內連做幾步。

瀏覽器異常時,可運行 bctl.ps1 ensure 查看 absent / windowless / hidden / ok 等狀態說明。

適用場景與注意

適合誰:在 Windows 上已用 DSH 做自動化或助手開發,希望 AI 直接操作當前 Edge/Chrome 窗口(含已登錄會話),且不願爲 CDP 重啓瀏覽器的開發者。

平臺與依賴:僅 Windows;插件聲明 Node >=20 爲引擎要求(由 DSH 插件包管理,非讓用戶自裝 Node 驅瀏覽器)。可選 Tampermonkey + 用戶腳本擴展能力。

權限與安全:插件以當前 DSH 進程權限在本機操作窗口與輸入設備;安裝前應閱讀源碼與 MIT 許可證,確認可接受本地 UI 自動化與 SendInput 的行爲範圍。本地橋默認只監聽 127.0.0.1;仍建議在可信環境使用,並知悉 audit 日誌會記錄操作步驟。

卸載:按 DSH 常規方式移除插件即可;油猴腳本在 Tampermonkey 管理面板中單獨刪除。詳細步驟見倉庫 README「卸載」一節。

結尾

dsh-browser-bridge 把「接不上已開瀏覽器」的 CDP 限制繞開,用 UIA + SendInput + 可選油猴橋,讓 DSH 在 Windows 上驅動真實 Edge/Chrome 窗口。先裝插件、重啓 DSH、用一句話列出窗口驗證;需要更快、更省的頁面內能力時再裝 Tampermonkey 腳本並啓動本地橋。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜