前言¶
DeepSeek Harness (DSH) 採用插件化架構,允許爲本地模型擴展聯網能力。在構建本地優先的智能體時,開發者常面臨兩個痛點:一是外部搜索 API 費用高昂或依賴不穩定;二是內置的 Web 功能可能無法滿足特定場景需求,或者與自定義配置衝突。
dsh-web-automation 旨在解決這些問題,它將多引擎無密鑰搜索、本地緩存獲取以及平臺特定搜索整合爲一個獨立的插件。
插件介紹¶
這是一個 DeepSeek Harness (DSH) 插件,爲本地模型提供本地優先的 Web 棧。
維護者:stelmakhdigital
許可證:MIT
它包含四個核心能力,全部通過一個安裝命令即可啓用:
- 多引擎搜索:提供
web_search工具,支持 DuckDuckGo 和 Bing(無密鑰),並可選 Exa / DeepSeek / Jina(需 API Key)。支持後備或融合路由、冷卻機制和 BM25 優化。 - 緩存獲取:提供
web_fetch工具,基於 SQLite 緩存,支持 ETag/Last-Modified 驗證。在 TTL 內的重複請求不會發起網絡請求。 - Web 平臺搜索:提供
web_platform_search工具,可直接搜索 GitHub、Reddit、YouTube、Bilibili、V2EX、RSS 等。支持通過配置添加新平臺,無需修改代碼。 - 歷史與統計:提供
web_history、web_search_stats和web_cache_clear工具,讀取本地共享存儲,無需聯網。
所有狀態均爲本地存儲,無需雲服務。
核心能力¶
-
多引擎搜索
支持路由至 DuckDuckGo/Bing(免密)和 Exa/DeepSeek/Jina(可選)。支持fallback(後備)或fuse(並行+RRF 融合)模式,並支持區域設置和 BM25 豐富。 -
SQLite 緩存
背後是 SQLite 頁面緩存,使用 ETag 和 Last-Modified 進行條件驗證。當頁面在 TTL 內被重複獲取時,不會發起網絡請求。 -
Web 平臺搜索
通過web_platform_search工具搜索特定平臺。平臺列表包括 GitHub、Reddit、YouTube、Bilibili、V2EX、RSS 等。新平臺可通過配置或規則包熱加載添加。 -
歷史與緩存工具
web_history查看搜索歷史,web_search_stats查看統計,web_cache_clear清除緩存。所有數據均來自本地數據庫。
安裝與啓用¶
前置條件:
* Node.js 22.19+ 或 24+(DSH 本身的要求)。
* 已安裝 DeepSeek Harness(可通過 npx @deepseek-ai/dsh 或源碼構建運行)。
- 安裝插件
使用官方命令將插件安裝到指定 Profile(例如webprofile):
dsh plugin --profile web add git+https://github.com/stelmakhdigital/dsh-web-automation.git
該命令會自動應用 `local-web.cordis.yml` 覆蓋層,固定 `web` seam 並註冊相關工具。
- 啓動與驗證
安裝後啓動 Profile:
dsh web # 啓動 Web UI,地址 http://127.0.0.1:3080
dsh --profile tui # 啓動 TUI(需確保 Profile 名爲 tui)
在 DSH 會話中運行煙霧測試:
web_search "hello world"
配置與注意事項¶
配置方式
插件默認已啓用所有功能,無需額外配置。如需調整,可在 DSH 的 cordis.yml 或通過 dsh --patch ... 應用覆蓋層中添加配置段。
關鍵配置項包括:
* search:配置引擎列表(engines)、模式(mode:fallback 或 fuse)、區域(region)以及 Exa/DeepSeek/Jina 的 API Key。
* fetch:配置緩存驗證策略(revalidate)。
* platforms:註冊 web_platform_search 工具,設置最大結果數,或通過 id 和 searchUrl 添加自定義平臺。
* history:控制歷史記錄、緩存清理和統計功能的開關。
注意事項
1. 本地存儲:插件狀態存儲在 $DSH_HOME/web.db,所有數據均爲本地化。
2. 互斥性:本插件與 DSH 內置的 Web 包(如 web-search-multi 等)互斥,不能同時加載,否則會在啓動時報錯 WEB_DUPLICATE_PROVIDER。
3. 瀏覽器自動化(可選):如需網頁自動化(browser_open 等),需單獨安裝 dsh-web-browser 子包,並運行 playwright install chromium。
4. 許可證:插件遵循 MIT 許可證。
結語¶
dsh-web-automation 將本地 Web 棧所需的功能解耦爲插件,使得在 DSH 中實現零成本的免密搜索和本地化緩存變得簡單。它適合希望在本地環境運行智能體、避免外部 API 依賴的開發者。
- 插件目錄:skillhub.cn
- GitHub 倉庫:stelmakhdigital/dsh-web-automation