DSH Browser Client

前言

DSH Browser Client 是一個通過瀏覽器浮窗實現網頁自動化的工具。它解決了在 DSH 環境中直接操作瀏覽器頁面常遇到的同源策略限制問題。工具運行在用戶已登錄的真實瀏覽器中,能夠直接利用現有的 Cookie 和 SSO 權限進行操作。

核心能力

插件提供了一套頁面操作工具和一個探索模式工作流。頁面工具用於單次或批量操作當前頁面,探索模式則用於處理複雜任務,通過邊操作邊學習的方式生成工作流。

頁面操作工具

工具名 功能
page_snapshot 獲取頁面結構化快照,包含 URL、標題、可見文本及交互元素座標
page_eval 在頁面 MAIN world 執行任意 JavaScript 代碼
page_act 執行點擊、輸入、滾動、鍵盤操作或清除內容
page_navigate 跳轉、後退、前進或刷新頁面
page_wait 等待特定元素出現、網絡空閒或延時
page_screenshot 截取視口、特定元素或整頁
page_network 讀取頁面發生的 fetch/XHR 請求詳情(URL、方法、狀態、響應預覽)

網頁工作流與探索模式

面向非研發人員,支持將對話轉化爲可保存重跑的工作流。
* 網頁工作流:通過 workflow_generate 工具生成工作流,支持 page_record / page_highlight 錄製演示,執行器支持循環、分支、審批等邏輯。
* 探索模式:通過 explore_start 啓動,反覆使用 explore_act 試錯,最後用 explore_check 驗證,並將成功路徑提煉爲工作流。

安裝與啓用

安裝過程分爲 DSH Host 端配置和瀏覽器擴展加載。

1. 配置 DSH Host

將 cordis.patch.yml 插件插入 DSH profile,並重啓 DSH。啓動後日志會打印 token 並註冊上述頁面工具。

2. 加載瀏覽器擴展

打開 Chrome 或兼容瀏覽器,訪問 chrome://extensions,開啓開發者模式,加載已解壓的擴展程序,選擇 browser-ext/extension 目錄。

配置與使用

在瀏覽器擴展的設置面板中填寫 Host 地址和 Token。Token 位置通常爲 $DSH_HOME/browser-client-token。

使用時,在任意網頁右下角的浮窗中發起對話。例如提問“這個頁面現在顯示什麼?”,DSH 會調用 page_snapshot 獲取頁面數據並回答。

注意事項

  • 工具命名規範:工具名使用下劃線(如 page_snapshot),不含點號(如 page.snapshot)。騰訊 intranet 網關會拒絕含點號的工具名。
  • 瀏覽器兼容性:Chrome 151+ 在 macOS 上禁用了 --load-extension 命令行加載方式。當前插件在 360Chrome(Chromium 132)環境下已通過實測,Chrome 用戶需手動加載擴展。
  • 驗證環境:不啓停生產實例(如 3080),所有驗證通過獨立新端口實例進行。
  • 權限範圍:插件以當前 DSH 進程權限運行,安裝前應檢查源碼與許可證。

生態與鏈接

該插件由 flymysql 維護,遵循 MIT 許可證。詳見 GitHub 倉庫。

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

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

小夜