前言¶
DeepSeek Harness(dsh)是 DeepSeek 開源的智能體運行時,官方倉庫把設計原則寫成一句話:一切皆插件。模型適配、工具、會話、界面都可以拆成插件增刪。智能體要登錄站點、填表、翻頁、下 PDF 時,純文本工具往往不夠,真正能帶着 Cookie 跑動態頁面的,還是 Chromium。
社區維護者 Fisfzy 做的 ego-browser,就是把 CitroLabs/ego-lite 這套給 AI Agent 用的 Chromium,接到 Harness 裏。它不是 DeepSeek / 幻方的官方應用商店貨架——收錄它的 DeepSeek Harness 插件庫 是獨立社區目錄,與官方無從屬關係。下面按目錄頁和 GitHub 倉庫能覈對到的信息,說明它做什麼、怎麼裝、用的時候要注意什麼。
當前倉庫 package.json 版本爲 0.8.0,主要語言 JavaScript,要求 Node ≥ 22。GitHub 截至 2026-08-17 顯示 22 星;社區目錄頁仍顯示 13 星,以倉庫頁面爲準更穩妥。
這是什麼¶
ego-browser 是一款「工具與能力」類 DSH 插件,由 Fisfzy 維護,包名 @dsh-external/ego-browser。定位很直接:把 ego-lite 的瀏覽器能力變成 Harness 裏一組可調用的 ego_* 工具,並附帶即時觀察窗。
社區目錄頁的簡介仍寫「13 個結構化 ego_ 工具」。對照倉庫 README 與 lib/index.js 的註冊列表,當前源碼實際註冊了 32* 個工具(前綴均爲 ego_)。目錄元數據滯後,下文以倉庫源碼爲準。插件包內置 runtime/ 裏的 ego 運行時,README 說明 Linux + Chrome 可開箱使用,不必再克隆 ego-lite 官方倉庫或手動構建。
它要解決的問題,和 ego-lite 自己的定位一致:通用瀏覽器不是爲 agent 設計的,登錄態、驗證碼、動態渲染、表單這些只有真瀏覽器好處理。ego-browser 再補一層——agent 在後臺點頁面時,你能在 DSH Web 界面裏看到畫面,必要時直接接手。
核心功能¶
倉庫把能力分成工具層和觀察窗兩塊。工具層每個動作會把參數拼成 JS 腳本,經 ctx.subprocess 交給內置的 ego-browser nodejs,由 CDP 驅動共享 Chromium;結果用 @@DSH_RESULT@@ 哨兵行解析。全部 ego_* 在進程內互斥串行,避免搶同一個瀏覽器。
1. 32 個結構化工具
完整索引可用 ego_help。按 README 的分類如下:
- 任務空間:
ego_space_open、ego_space_close、ego_status - 頁面讀取:
ego_snapshot(語義樹)、ego_page_info、ego_read_element - 導航 / 等待:
ego_navigate(複用 tab)、ego_wait、ego_wait_for_selector、ego_wait_for_url、ego_wait_for_response - 交互:
ego_click、ego_fill、ego_hover、ego_drag、ego_select、ego_check、ego_key、ego_scroll - 執行 / 調試:
ego_js(頁面求值)、ego_cdp(原始 CDP)、ego_cli(任意 heredoc)、ego_script(多步腳本) - 輸出:
ego_screenshot、ego_download、ego_upload - 會話 / 安全:
ego_auth_flush(登錄落盤)、ego_captcha、ego_dialog - 元工具:
ego_help、ego_doctor、ego_http
語義快照、按語義定位點擊、填表、截圖、CDP、任務空間隔離,都在這套工具裏。環境不通時,可先跑 ego_doctor 做體檢。
2. 即時觀察窗
帶圖形界面的 DSH Web 裏,右下角有常駐小球,點開後是 agent 當前頁面的實況。CHANGELOG 寫明 v0.5.0 起用 SSE 推流(Page.screencastFrame),監控窗可通過 CDP 把點擊、拖拽、滾動回傳到同一個 agent 瀏覽器。標籤條可切換 / 關閉標籤,歷史抽屜按時間回看訪問軌跡。無顯示器的 headless 會話仍可用 ego_* 工具,只是沒有觀察窗。
v0.8.0 起:若環境裏裝了 dsh-better-sidebar,觀察窗會註冊成 sidebar 的原生 Tab;沒裝則退回原來的浮動窗。首次調用 ego_* 時會嘗試自動打開該 Tab。這是可選集成,不把 sidebar 寫成硬依賴。
3. 內置運行時與平臺探測
runtime/ 嵌入了 CitroLabs/ego-lite 的 MIT 代碼(含 Linux 移植相關改動),詳見倉庫 THIRD_PARTY_NOTICES.md。resolveEgoEnv 會自動探測 Chrome / Chromium / Brave / Edge;root、Docker、無顯示器場景可用隨包的 --no-sandbox wrapper。也可用環境變量 EGO_LINUX_CHROME 指定瀏覽器路徑。
4. 任務空間隔離
多任務空間的 Cookie 相互隔離,登錄要在對應空間裏做。這是 ego-lite「讓 agent 用已登錄瀏覽器、又不攪你自己的標籤」那套模型在 DSH 裏的落地方式。
安裝與啓用¶
社區目錄頁給出的安裝命令如下,在 DeepSeek Harness 終端裏執行即可:
dsh plugin add github:Fisfzy/ego-browser
需要指定 profile 時,官方 CLI 的形式是 dsh plugin --profile <profile-name> add github:Fisfzy/ego-browser。GitHub 源安裝可能在裝包時執行構建腳本,pnpm ≥ 10 會要求你先允許該包的 prepare。目錄頁也提示:如需可復現安裝,請固定 commit 哈希。截至 2026-08-17,倉庫 master 最新提交爲 41f791af9dcf29f1b14102add921a545f9e6c0c8,可以寫成:
dsh plugin add github:Fisfzy/ego-browser#41f791af9dcf29f1b14102add921a545f9e6c0c8
倉庫 README 另外寫了 dshx install ego-browser <tarball 或 git URL>,裝完用 dshx list 應看到 [on] ego-browser。那是另一套裝載器寫法;走社區目錄時,以頁面上的 dsh plugin add 爲準。
package.json 裏 "private": true,README 也寫明不發佈到 npm / 公共 registry,不要按包名去 npm 上找。
前置條件(來自 README):
- Node ≥ 22(Harness 環境通常自帶)
- 本機有 Chrome / Chromium / Brave / Edge,或設置
EGO_LINUX_CHROME - 已安裝 DSH;要看觀察窗則需要帶圖形界面的 DSH Web
可選配置寫在 ~/.dsh/config.yaml 對應插件條目下,README 列出的字段包括 egoBin、defaultSpace、maxOutputBytes、graceMs。瀏覽器路徑探測失敗時,可改 egoBin 或設置頁裏的 Chrome 路徑。v0.8.0 之後,設置卡還可以調觀察窗推流參數(幀率上限、JPEG 質量、幀寬度、兜底截圖間隔),這些屬於觀察窗側配置,不影響 ego_* 工具本身是否可用。
典型用法¶
倉庫沒有給出一段可直接粘貼的對話示例,但工具職責是確定的。裝好並確認插件已啓用後,一次常見流程是:
- 用
ego_space_open打開(或複用)任務空間,默認空間名可在配置裏改,源碼默認是dsh-agent。 - 用
ego_navigate打開目標 URL(文檔寫明會複用 tab)。 - 用
ego_snapshot拿頁面語義樹,再用ego_click/ego_fill按語義定位交互;需要等元素或 URL 變化時用ego_wait_for_selector、ego_wait_for_url。 - 需要視覺覈對時調用
ego_screenshot;遇到人機驗證可用ego_captcha探測,登錄態要落盤則用ego_auth_flush。 - 不確定當前環境時先跑
ego_doctor,工具清單以ego_help爲準。
觀察窗一側(DSH Web):
- 點右下角小球打開實況;滾輪縮放、按住拖動、雙擊復位。
- 頂部標籤條切換頁面,
×關閉的是真實瀏覽器標籤。 - 監控窗裏的鼠標操作會回傳到 agent 正在用的那一個 Chromium,不必另開一套瀏覽器。
README 列出的上手場景包括:讓 agent 在已登錄站點翻頁收集資料、填表中途用觀察窗接手驗證碼、在自己產品上做冒煙點擊,以及 agent 操作 DSH 界面本身時同樣可見(倉庫稱爲 self-observation)。這些是文檔中的能力說明,不是第三方評測。
適用場景與注意事項¶
適合已經在跑 DeepSeek Harness、需要智能體操作真實網頁的人:抓取帶登錄態的站點、填複雜表單、看 agent 點了什麼、必要時自己接管。純 API 抓取或無瀏覽器環境的任務,不必上這個插件。
使用前請直接看這幾條邊界,都來自倉庫 README / CHANGELOG,不要當成「全平臺完美可用」:
- Windows:插件層在 v0.4.0 做了適配;底層 ego-lite 宿主仍是非 Windows 官方支持的社區移植,複雜多步流程穩定性可能弱於 macOS。
- 快照質量:Linux 用 CDP
DOMSnapshot重建語義樹,不是 macOS 上的內核級快照,複雜 iframe / 畫布場景可能降級。 - Linux 宿主:文檔寫明 Linux 側是未合併進上游的社區移植,跨 CLI 調用間可能丟 tab / 空間狀態;插件有防禦,簡單流程相對穩,複雜流程可能要重試。
- 登錄態:多空間 Cookie 隔離;Chrome 運行期 Cookie 主要在優雅關閉時落盤。CHANGELOG 的 Unreleased 項還在改重啓後的落盤行爲,強殺(SIGKILL)場景不要默認「一定能恢復登錄」。
- 觀察窗依賴 Web:headless 只有工具、沒有直播畫面。
- 輸出 schema:文檔寫明爲寬鬆
additionalProperties: true,客戶端以實際返回值爲準。
插件以當前 dsh 進程的權限運行,安裝時可能執行代碼。裝之前應自己檢查 GitHub 源碼和許可證。package.json 聲明插件本體爲 MIT,內置 runtime 同樣按 MIT 嵌入 ego-lite;GitHub 倉庫目前沒有被識別到的 LICENSE 文件,以倉庫內聲明和 THIRD_PARTY_NOTICES.md 爲準,不要想當然當成官方擔保。
README 頁眉仍寫「私有 · 內測」,但截至本文覈實日,https://github.com/Fisfzy/ego-browser 是公開倉庫,社區目錄已收錄。頁眉文案和可見性不一致時,以 GitHub 倉庫實際狀態爲準。
小結¶
ego-browser 做的事情很具體:把 ego-lite 這套 Agent 瀏覽器接進 DeepSeek Harness,交出一批可調用的 ego_* 工具,並在 Web 界面上給一條能看、能點的觀察通道。目錄頁安裝命令是 dsh plugin add github:Fisfzy/ego-browser;當前源碼是 32 個工具、版本 0.8.0,內置運行時,不走 npm。它是社區插件,不是 DeepSeek 官方商店裏的一欄。裝之前讀源碼、固定 commit、按自己的權限模型評估風險,比多看一句介紹更重要。
目錄頁:https://deepseek-harness-plugin.com/zh-CN/plugins/ego-browser/
GitHub:https://github.com/Fisfzy/ego-browser
上游瀏覽器:https://github.com/CitroLabs/ego-lite