@kasenri/dsh-browser:DeepSeek Harness 瀏覽器自動化插件

前言

DeepSeek Harness (DSH) 採用插件化架構,允許通過插件擴展 Harness 的能力。@kasenri/dsh-browser 是一個社區插件,旨在解決 AI 代理無法直接操作瀏覽器的問題。它通過 Harness 原生的基礎設施(agents, tools, sessions),將瀏覽器自動化能力注入到 DSH 流程中。

插件介紹

這是一個讓 AI 真正操作瀏覽器完成任務的插件。它通過 ctx.browserAutomation 提供 BrowserAutomationService,並對外暴露 agent_browser 工具,用於驅動底層的 agent-browser CLI(版本 0.33.2,必須處於 PATH 環境中)。

插件支持打開網頁、點擊、輸入、翻頁、讀取內容和下載文件等操作。這些能力可用於網頁測試、信息採集和自動化流程。插件提供域名限制等安全控制,並對輸出進行了保護機制處理。

安裝與啓用

安裝該插件需要 DSH 處於開發者預覽階段。安裝命令如下:

dsh plugin --profile web add @kasenri/dsh-browser

安裝後需要重啓 profile(或開啓新會話)以生效。該包聲明瞭一個 dsh.bundle 補丁,註冊時會自動將其作爲 profile layer。

插件依賴於以下組件:
- @deepseek-ai/dsh (版本 0.1.5-rc.2)
- @deepseek-ai/cordis (版本 4.0.2)
- agent-browser (版本 0.33.2,必須在 PATH 中)
- Node.js (版本 >= 22.19.0)

如果 agent-browser 未在 PATH 中,可以通過 command、executablePath 配置項,或設置環境變量 DSH_BROWSER_EXECUTABLE_PATH 來指定可執行文件路徑。

核心功能

插件提供以下核心能力:

  1. 瀏覽器操作:支持打開網頁、點擊、輸入、翻頁、讀取內容和下載文件。
  2. 多種輸入模式:agent_browser 工具支持多種輸入模式,包括 args(原始參數)、semanticAction(語義動作)、job(批量步驟)、qa(頁面質檢)、electron(CDP 連接)、sourceLookup(DOM/React 證據查找)和 networkSourceLookup(網絡請求證據查找)。
  3. 標準工作流:推薦的工作流爲 open → snapshot -i → 使用 @refs → click/fill/select → 再次 snapshot -i。

安全與保護機制

爲了防止自動化過程中的意外和風險,插件內置了多層保護機制:

  1. 防止過時引用:refs 是頁面作用域的,插件會阻止對非最新快照中目標進行操作。
  2. 防止標籤漂移:如果活動目標發生變化(包括 about:blank),插件會觸發恢復機制,而不是盲目猜測。
  3. 驗證磁盤產物:截圖、下載文件、PDF、HAR/trace 等產物在報告成功前,會驗證其存在性、大小和類型。
  4. 阻止敏感信息:.agent-browser 狀態、密碼存儲、cookie 數據庫被阻止;所有工具輸出中的憑證形狀值會被脫敏。
  5. 域名限制:配置 allowedDomains 後,會進行預檢,並在啓動時注入 --allowed-domains 參數。啓用限制後,拒絕 CDP attach (electron/connect),因爲無法在現有瀏覽器上下文中強制執行。
  6. 強制人工驗證:插件不會繞過 CAPTCHA、OTP、passkey、WebAuthn 和 2FA,遇到這些情況會停止並報告。

配置說明

插件支持以下配置項:

配置項 默認值 說明
command agent-browser 要調用的可執行文件名稱。
namespace — 可選的 agent-browser 命名空間。
executablePath DSH_BROWSER_EXECUTABLE_PATH 指向 Chromium/Chrome 可執行文件的路徑。
timeoutMs 35000 每次子進程調用的默認超時時間。
maxOutputChars 8000 內聯輸出的字符預算,超過則寫入 spill 文件。
maxOutputLines 120 內聯輸出的行預算,超過則寫入 spill 文件。
spillDir ~/.dsh/browser-artifacts 寫入緊湊化輸出的目錄。
allowedDomains [] 嚴格的域名白名單,用於域名隔離。
registerTool true 是否註冊 agent_browser 工具。

注意事項

  1. 版本依賴:插件僅針對特定版本的 DSH 和相關依賴進行了測試,不保證與其他版本兼容。
  2. 權限運行:插件以當前 DSH 進程的權限運行,安裝前應檢查源碼與許可證。
  3. 狀態管理:插件通過驗證磁盤產物來確認操作成功,這意味着必須在文件系統中留下痕跡。

參考資料

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

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

小夜