在 DeepSeek Harness 中,切换搜索引擎通常需要进入设置页面,或者输入斜杠命令。如果网络环境限制了 DeepSeek 官方接口,这一过程会变得繁琐。dsh-search-switcher 插件将搜索引擎切换器直接渲染在 Composer 输入区的模型选择器左侧,提供即时的操作入口。
插件定位¶
该插件由 Hudson-Junior-Wang 维护,基于 MIT 许可证开源。它是一个紧凑型工具,旨在解决在 DeepSeek Harness composer 中快速更改首选搜索引擎的问题。
安装与启用¶
安装插件需要通过 Harness 的插件 CLI 执行。同时,该插件依赖 dsh-free-search 插件(版本 >= 0.4.7)来提供设置桥接和搜索提供商。
- 安装插件:
dsh plugin --profile web add https://github.com/Hudson-Junior-Wang/dsh-search-switcher.git
- 安装或确认
dsh-free-search已安装:
dsh plugin --profile web add https://github.com/DDDMUC/dsh-free-search.git
- 安装完成后,重启 Harness Web 主机或刷新 UI。控制面板将出现在模型选择器的左侧。
核心功能¶
- 即时切换:通过
conversation.input.right注入控制组件,位于模型选择器左侧。 - 引擎列表:提供可滚动的引擎列表,当前选中的引擎会高亮显示。
- 读写配置:通过 loopback bridge 读取并写入
free-search.provider设置。 - 支持的引擎:兼容
dsh-free-search暴露的十个引擎,包括 DuckDuckGo HTML、DuckDuckGo Lite、Bing、AnySearch AI、SearXNG、Exa、Tavily、Keenable、Perplexity 和 DeepSeek Official。 - 视觉适配:使用 Harness 的主题变量进行渲染,保持界面一致性。
- 全键盘支持:
- 箭头键:打开菜单并在引擎间移动。
- Home/End:跳转至列表首尾项。
- Enter/Space:激活当前选中的引擎。
- Escape:关闭菜单并恢复焦点。
兼容性说明¶
使用本插件前,需注意以下环境要求与已知问题:
- Node.js 版本:需要 DeepSeek Harness Web profile 运行在 Node.js 20 或更高版本。
- dsh-free-search 版本:要求
dsh-free-search版本 >= 0.4.7。 - 特定版本兼容性问题:
在dsh-free-search0.4.22 版本中,如果 Harness 的dsh-settings版本 <= 0.1.2-alpha.1(旧运行时),插件将无法加载。这是因为旧运行时移除了installSection方法,导致free-search命名空间未被暴露。- 解决方案:将 Harness 升级至包含
@deepseek-ai/dsh-settings >= 0.1.2-alpha.2的版本;或在旧运行时下修补本地安装的dsh-free-search0.4.22;或者将dsh-free-search降级至 0.4.21 及以下。
- 解决方案:将 Harness 升级至包含
适用场景与限制¶
典型用法:
* 在网络环境屏蔽 api.deepseek.com 时,无需离开当前对话,点击切换器即可回退到 Bing、DuckDuckGo 或 SearXNG。
* 快速在多个本地或第三方搜索引擎之间切换,无需记忆或输入斜杠命令。
限制:
* 该插件仅负责切换首选提供商,不会绕过任何提供商的认证、API 密钥要求或网络限制。
* 它不提供搜索结果预览,仅控制数据源。
总结¶
dsh-search-switcher 通过将控制权下放至 Composer 输入区,优化了 DeepSeek Harness 的搜索体验。对于需要频繁切换网络环境或搜索引擎的用户,它提供了一条直接、高效的路径。
- 项目主页: https://github.com/Hudson-Junior-Wang/dsh-search-switcher
- 技能星目录: https://www.skillhub.cn/plugins/Hudson-Junior-Wang/dsh-search-switcher