前言¶
DeepSeek Harness 的核心設計理念是“一切皆插件”。在智能體開發中,經常需要 Agent 模擬真實用戶在瀏覽器中完成一系列操作,例如登錄系統、填寫表單、查詢訂單等。手動編寫 Playwright 或 Selenium 腳本成本高且難以維護,而 DSH 原生能力難以直接覆蓋複雜的瀏覽器交互場景。下面介紹 dsh-browser-ops 插件,它讓 DSH 的 Agent 能夠直接接管真實瀏覽器,並支持錄製手動操作流程,按參數自動重放以生成測試數據。
這是什麼¶
dsh-browser-ops 是一個 DeepSeek Harness 插件,由用戶 lirui1024k 維護。它旨在解決智能體無法直接操作瀏覽器的問題,允許 Agent 通過 27 個 browser_* 工具對 Chrome 瀏覽器進行快照、點擊、填充等操作,並支持將手動操作錄製爲帶有變量槽的 JSON 流程,以便後續按參數重放。該插件非 DeepSeek 官方出品,使用 MIT 許可證。
核心功能¶
- Agent 直接操作瀏覽器:提供
browser_launch、browser_open、browser_snapshot、browser_click、browser_fill、browser_select、browser_read_text、browser_read_table、browser_eval、browser_screenshot、browser_diagnostics等 27 個工具,覆蓋瀏覽器的基礎控制與診斷能力。 - 錄製操作流程:通過
browser_record_start和browser_record_stop,將手動在瀏覽器窗口中的操作記錄爲 JSON 格式的流程文件,存儲在數據目錄的flows/下。 - 變量槽與自動重放:支持在流程中定義變量槽,通過
browser_run_flow填入參數執行流程,並可配合verifyText進行結果校驗。 - Web GUI 面板:DSH 設置頁面提供「瀏覽器操作」頁籤,支持啓動/連接瀏覽器、控制錄製/停止、查看流程列表、編輯變量及一鍵重放。
- 兩種瀏覽器模式:
- Managed(默認):插件啓動獨立的 Chrome 瀏覽器,使用專用檔案目錄,登錄態持久且不觸碰日常瀏覽器數據。
- Connect:通過 CDP(Chrome DevTools Protocol)連接到日常使用的 Chrome 瀏覽器。
安裝與啓用¶
確保已安裝 DeepSeek Harness Desktop 且 Node.js 版本不低於 20。執行以下命令安裝插件:
dsh plugin --profile dsh-desktop add dsh-browser-ops
安裝後重啓 DSH Desktop,新會話即可使用 browser_* 工具,或在設置頁的「瀏覽器操作」面板中查看面板。
典型用法¶
- 啓動瀏覽器,打開測試系統(如
https://test.example.com),手動完成登錄。 - 開始錄製流程:使用
browser_record_start,在瀏覽器中手動執行“創建訂單”的操作,完成後使用browser_record_stop。 - 設置變量:使用
browser_flow_edit將步驟中的“客戶名稱”標記爲變量槽。 - 自動重放:執行
browser_run_flow,傳入參數{"客戶名稱": "張三"},並使用verifyText校驗頁面是否顯示“創建成功”。
適用場景與注意¶
此插件適用於需要智能體自動化瀏覽器操作、錄製手動流程以複用、以及通過參數化重放生成測試數據的場景。
已知限制:
* 不支持文件上傳、拖拽操作、iframe 內元素交互以及跨標籤頁操作。
* 定位器優先使用語義標籤(label/placeholder/text/testid/id),頁面結構大變時建議重新錄製。
* connect 模式目前僅提供 macOS 一鍵腳本支持。
* managed 模式的 Chrome 自動探測主要針對 macOS,其他平臺需通過環境變量 DSH_BROWSER_CHROME 指定路徑。
* 插件以當前 DSH 進程權限運行,安裝前請檢查源碼與許可證。
總結¶
dsh-browser-ops 通過提供豐富的 browser_* 工具集和可視化的錄製/回放機制,降低了智能體接管瀏覽器的門檻。它適用於需要高頻創建測試數據或執行復雜瀏覽器交互的場景。更多詳情請參考插件目錄或GitHub 倉庫。