前言¶
在 DSH 中,網頁搜索能力可以通過 web seam 的 provider 接入。dsh-web-search-anysearch 將 AnySearch 的 POST /v1/search REST API 作爲搜索後端,並提供獨立的 Web settings section。它由 mcxianyujun 維護,採用 MIT 許可,版本號爲 0.1.1。
這是什麼¶
這是一個原生 DeepSeek Harness WebSearchProvider,id 爲 anysearch,掛在 ctx.web 上。它調用的是 AnySearch 原生 POST /v1/search,不是 /mcp JSON-RPC 橋接,也不需要 patch Harness 核心。
核心功能¶
- 原生
WebSearchProvider(id: anysearch)overctx.web - 調用 AnySearch
POST /v1/searchREST API - 提供獨立的 Web settings section,獨立於 DeepSeek search provider
- 使用獨立憑據:
ANYSEARCH_API_KEY和按字段引用的ANYSEARCH_*,不會複用 DeepSeek provider 的 key - API key 由 DSH credentials service 保存,不寫入 settings documents
- 保留來源信息:
url、title、snippet完整映射,並按 URL 去重 - 支持配置
Max Results(1–20)、Zone(cn/intl)、Language、Format(json/markdown)和Base URL - 支持 Web profile(GUI + settings section)
- 支持 Headless profile(CLI / automation)
- 提供結構化、不虛構結果的錯誤處理,覆蓋
401/403、429、網絡、JSON 和異常響應包 - 提供最小化的 zero-network 單元測試
- 不需要 patch Harness 核心
安裝與啓用¶
要求¶
- DeepSeek Harness,且帶有
web和/或headlessprofile - 構建步驟需要 Node.js
>= 20和pnpm - AnySearch API key 對低頻率匿名使用是可選的;爲了可靠訪問,建議使用
Web profile 安裝¶
在 Web profile 下執行:
dsh plugin --profile web add dsh-web-search-anysearch
這條命令安裝並註冊 dsh-web-search-anysearch 插件。
啓用搜索¶
安裝後,在 Web settings section 中填寫 AnySearch API key 和相關配置。API key 由 DSH credentials service 保存,不會寫入 settings documents。
Windows 安裝路徑¶
PowerShell installer 只會修改目標 profile 的 package.json 和 cordis.patch.yml,並先備份這兩個文件;重複執行時是冪等的,不會重複添加條目。
典型用法¶
下面這些問法都可以觸發需要外部信息的搜索:
- “今天北京天氣如何?”
- “What are the latest release notes for Go?”
- “Search for recent DeepSeek Harness plugins”
返回結果會保留 url、title 和 snippet 元數據,並按 URL 去重。
適用場景與注意¶
這個插件適合需要在 DSH 的 Web profile 或 Headless profile 中接入 AnySearch 的開發者。使用前注意以下幾點:
- 插件以當前 DSH 進程權限運行,安裝前應檢查源碼與 MIT 許可。
- 插件會向 AnySearch 發起外部請求;如果需要更穩定的訪問,建議配置 API key。
ANYSEARCH_API_KEY通過 DSH credentials service 保存,不寫入 settings documents。- DSH CLI remove 會移除 npm 依賴和 bundle registration,但不會刪除用戶編寫的
cordis.patch.ymloverride entries。