前言¶
DSH 通過插件擴展能力。web_search 這類搜索能力掛在 DSH 的 ctx.web 搜索插槽上;模型可見的工具 schema 可以保持不變,只需要更換底層搜索 provider。dsh-web-search-firecrawl 就是一個把 Firecrawl 接入這個插槽的 provider 插件。
這是什麼¶
一句話定位:它是一個 Firecrawl-backed search provider,面向 DeepSeek Harness 的 web capability seam(ctx.web)。
它解決的是:在不直接註冊模型可見工具、web_search 工具 schema 仍來自 @deepseek-ai/dsh-tool-web 的前提下,把搜索請求送到 Firecrawl 的 POST /v1/search,並將返回結果映射回 DSH 的 normalized 搜索結構。
包名爲 @pionai/dsh-web-search-firecrawl。輸入資料裏存在 PionsAI、PionAI、@pionai 等大小寫差異;本文不把某一寫法當成已確認的唯一官方 owner,安裝和引用以包名與命令爲準。
核心能力¶
註冊搜索 provider¶
插件註冊 id: firecrawl 的 WebSearchProvider 到 DeepSeek Harness 的 ctx.web 搜索插槽。
它不直接註冊模型可見工具;web_search 工具 schema 仍來自 @deepseek-ai/dsh-tool-web。
調用 Firecrawl 並映射結果¶
插件調用 Firecrawl 的 POST /v1/search 接口,並將 flat data[] 映射爲 normalized WebSearchResult / WebSearchSource。
設置頁配置¶
插件支持通過 DSH Settings 的 Firecrawl 頁面配置以下字段:
- API Key
baseURLlimitmaxSnippetChars
設置頁 API Key 爲空時,可回退到環境變量 $FIRECRAWL_API_KEY。
搜索路線切換¶
安裝後,默認將 web 行 searchProvider 切換爲 firecrawl。
也可通過 DSH Settings 的 Use Firecrawl 開關,或通過 profile patch 切回 DeepSeek。
安裝與啓用¶
前置條件¶
- 許可證爲 MIT。
- 需要 DeepSeek Harness
0.1.0-rc.6官方包版本線以及 Firecrawl API key。 - Node engines 要求
>=22。
安裝到 web profile¶
下面命令把插件安裝到 DSH 的 web profile:
dsh plugin --profile web add @pionai/dsh-web-search-firecrawl@latest
重啓與刷新¶
安裝後需要重啓 DSH web 頁面,並刷新瀏覽器,讓設置頁和運行中的頁面加載新 provider:
dsh web
刷新時使用 hard-refresh(Cmd/Ctrl+Shift+R)。
安裝後的狀態¶
安裝後默認會切換 web 行的搜索 provider 到 Firecrawl。
設置頁中應能看到 Firecrawl 頁面。沒有可用 key 時,搜索會失敗並返回 WEB_PROVIDER_CONFIGURED_UNAVAILABLE。
典型用法¶
在 DSH Settings 中配置 API Key¶
1、打開 DSH Settings 的 Firecrawl 頁面。
2、在 API Key 字段填入 fc-... 並保存。
3、字段保存時按 secret 角色寫入,不回顯明文。
4、如果字段爲空保存,會保留當前 key;需要清除時使用 Clear。
使用環境變量¶
如果設置頁中的 API Key 爲空,也可以使用環境變量作爲回退:
export FIRECRAWL_API_KEY=fc-...
dsh --profile web
更新¶
更新到最新發布版本:
dsh plugin --profile web update --latest @pionai/dsh-web-search-firecrawl
更新後重啓 DSH web,並 hard-refresh 頁面(Cmd/Ctrl+Shift+R)。
卸載¶
dsh plugin --profile web remove @pionai/dsh-web-search-firecrawl
卸載會移除包和 mount,但不會刪除設置頁中的 API key 值。如果也想刪除已保存 key,先在 Firecrawl 設置頁清除。
可選 profile patch¶
在 profile cordis.patch.yml 中,可以只固定需要的配置項,例如 limit:
- id: web-search-firecrawl
name: '@pionai/dsh-web-search-firecrawl'
config:
limit: 10
適用場景與注意¶
適合已經在用 DeepSeek Harness、希望把 web_search 後端切到 Firecrawl 的開發者或使用者。
注意以下幾點:
- 插件以當前 DSH 進程權限運行;安裝前應檢查源碼與許可證。
- 許可證爲 MIT。
- 需要 DeepSeek Harness
0.1.0-rc.6官方包版本線以及 Firecrawl API key。 - Node engines 要求
>=22。 - 沒有可用 Firecrawl key 時,搜索不可用,會返回
WEB_PROVIDER_CONFIGURED_UNAVAILABLE。 - provider 失敗、請求中止等會映射爲
WebError錯誤碼。 - HTTP 重定向會在接觸
Location目標前被拒絕。 - 設置頁 key 爲空時,可回退
$FIRECRAWL_API_KEY;兩者都沒有時 provider 不可用。 - 如果 owner 線索中存在
PionsAI/PionAI大小寫差異,引用倉庫或包名時請自行覈對。
鏈接¶
- 線索提供的社區目錄頁:
https://www.skillhub.cn/plugins/PionsAI/dsh-web-search-firecrawl - GitHub 倉庫(資料寫作):
https://github.com/PionAI/dsh-web-search-firecrawl