dsh-deepseek-search:獨立 Key 的 DeepSeek 網頁搜索

前言

在 DeepSeek Harness 裏做智能體,常見需求是「當前對話用的不是 DeepSeek,但仍要聯網查資料」。Harness 自帶的 web_search 往往和某個 web 搜索 provider 綁定;若再裝一個會註冊 searchProvider 的插件,還可能和現有配置衝突。下面介紹的插件走另一條路:用插件自己的 DeepSeek API Key 調用 DeepSeek 官方 Search 接口,同時提供左側欄搜索頁和全局工具 deepseek_search,且不接管 ctx.web 的搜索 provider。

這是什麼

dsh-deepseek-search(npm 包名 @local/dsh-deepseek-search,當前版本 0.2.0,MIT 許可證)由維護者 SivanCola 發佈,分類爲聯網工具。它把能力拆成兩半:瀏覽器側在左側欄增加「DeepSeek 搜索」入口,主欄裏是完整搜索頁;Host 側註冊工具 deepseek_search,並對全部 agent / 任意模型可見,另提供搜索頁使用的三個 HTTP 路由。搜索計費與鑑權用的是本插件解析出的 DeepSeek Key,與當前會話所用模型服務商(DeepSeek、Anthropic、OpenAI 兼容、本地模型等)無關。

核心功能

左側欄搜索頁

安裝並激活後,左側欄會出現放大鏡入口(README 示例環境中爲 Plugins / Schedules / Context 之後的第 4 個圖標)。點開後可在主欄輸入關鍵詞、調整結果條數、開關正文抓取、查看結果卡片,並在面板中配置或查看 Key 來源(脫敏顯示)。

任意模型在會話中均可調用該工具,參數如下:

參數 類型 必填 說明
query string 是 1–128 字符,支持 DeepSeek 搜索語法
count integer 否 1–50,默認 10
need_content boolean 否 爲 true 時在結果中返回網頁正文(更慢、體積更大)
ori_question string 否 用戶原始問題,輔助理解搜索意圖

query 可透傳官方語法,例如 site:、-site:、排除詞、"精確短語"、lang:、after: / before: 等(詳見倉庫 README 表格)。

返回給模型的是緊湊文本;結構化 JSON 含 results 數組,字段包括 title、url、snippet、summary、content、siteName、authority、rerankScore 等。

API Key 解析(四級回退)

每次調用重新解析,改動後下一次調用即生效,無需重啓。優先級從高到低:

  1. config.apiKey(明文,僅適合調試)
  2. Harness 憑證庫中的 DEEPSEEK_SEARCH_API_KEY(面板保存的獨立 Key)
  3. 模型列表裏已配置的 DeepSeek 官方 Key(默認開啓 useOfficialKey,從 provider 目錄推導憑證名,兜底 DEEPSEEK_API_KEY)
  4. 環境變量 DEEPSEEK_SEARCH_API_KEY / DEEPSEEK_API_KEY

若已在 Harness 中配置可用的官方 DeepSeek,多數情況下搜索可直接可用;若希望搜索走單獨賬號或額度,在面板填寫獨立 Key 即可。關閉自動複用官方 Key:

config:
  useOfficialKey: false

注意:自動複用僅 Key,不跟隨官方 provider 的 baseURL;自定義接口地址需設置 baseUrl(默認 https://api.deepseek.com)。

插件不註冊爲 ctx.web 的 searchProvider,避免觸發「無配置 + 多個 provider」時的模糊判定,從而儘量不干擾已有 web_search。Key 僅在 Host 側使用,瀏覽器側只看到脫敏信息;搜索請求由 Host 發起。

Host 暴露的 POST 路由(面板調用):

路徑 作用
/api/dsh-deepseek-search/status 配置狀態、脫敏 Key、來源、默認值
/api/dsh-deepseek-search/search 代理搜索
/api/dsh-deepseek-search/key 保存或清除憑證

安裝與啓用

換機或首次從 GitHub 安裝,使用資料中的命令:

plugin_manager action=install_bundle target=https://github.com/SivanCola/dsh-deepseek-search

若修改了 package.json、cordis.patch.yml 或 locale,需先卸載再安裝同一 bundle;僅改 index.js / client.js 時,可通過 set_bundle enabled=false 再 enabled=true 熱激活。具體 remove / install 步驟見倉庫 README。

可選配置寫在 profile 的 cordis.patch.yml 或插件內 cordis.patch.yml,例如:

鍵 默認 說明
apiKey '' 明文 Key
apiKeyEnv DEEPSEEK_SEARCH_API_KEY 憑證 / 環境變量名
baseUrl https://api.deepseek.com 接口 origin
count 10 默認條數
needContent false 默認是否抓正文
timeoutMs 25000 單次超時
toolName deepseek_search 工具名

環境變量方式示例:

export DEEPSEEK_SEARCH_API_KEY=sk-xxxx

修改環境變量後需重啓 DSH 進程。

典型用法

  1. 安裝 bundle 並確認左側欄出現「DeepSeek 搜索」、工具列表中有 deepseek_search。
  2. 若模型列表已有有效 DeepSeek 官方 Key,可先直接在面板試搜;否則點放大鏡 → 設置 → 粘貼 sk-... 保存爲獨立 Key。
  3. 在任意模型的會話中,讓 agent 調用 deepseek_search,傳入 query;需要全文時再設 need_content: true。

面板或工具返回錯誤時,README 排錯表列出了常見情況:401(Key 失效,會標明實際使用的是 DEEPSEEK_API_KEY 還是 DEEPSEEK_SEARCH_API_KEY)、402 餘額不足、429 QPS 超限、未配置 Key 等。

適用場景與注意

適合:希望用 DeepSeek Search API 做聯網、且不想改動現有 web_search provider 鏈路的 DSH 用戶;需要在非 DeepSeek 模型會話裏仍調用同一套搜索工具的場景。

注意:

  • 插件在當前 DSH 進程權限下運行;安裝前請自行查看 GitHub 源碼 與 MIT 許可證,確認可接受的行爲與依賴。
  • 搜索與正文抓取按 DeepSeek 官方計費規則(README:每 1000 次成功請求 5 元,失敗或空結果不計費);賬號 Search QPS 100、Fetch QPS 25。
  • need_content 受目標站點可用性影響,可能得到空正文。
  • 社區目錄 SkillHub 插件頁 爲獨立站點展示,與 DeepSeek / 幻方無官方從屬關係。

結尾

dsh-deepseek-search 用獨立解析的 DeepSeek Key 接通官方 Search 接口,以「側欄搜索頁 + 全局 deepseek_search 工具」的方式提供聯網能力,並刻意避開對 ctx.web search provider 的佔用。進一步瞭解與 issue 反饋見 GitHub 倉庫;目錄索引見 SkillHub 頁面。

  • 目錄頁:https://www.skillhub.cn/plugins/SivanCola/dsh-deepseek-search
  • GitHub:https://github.com/SivanCola/dsh-deepseek-search
羽毛球分组比赛记分
小程序二维码

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

小夜