前言¶
在 DeepSeek Harness(DSH)里做智能体时,网络搜索通常走 web_search 工具或 Host 侧的 ctx.web.search。若你只想在 Web 界面里快速试关键词、看几条真实结果,而不必开对话、写提示词,侧栏面板是更直接的路径。社区插件 dsh-baidu(仓库 liupengprivate-blip/dsh-baidu)就是一个刻意做小的示例:左侧栏加一个「搜索引擎模拟器」入口,提交关键词后调用本机 DSH 搜索能力,列出前 10 条结果。维护者为 liupengprivate-blip;在插件目录站点上归类为客户端类插件。
下面介绍它做什么、怎么装、怎么用,以及和凭据、权限相关的注意点。
这是什么¶
dsh-baidu 是 DSH 的最小示例级插件:在 Web 界面左侧栏增加放大镜入口,主列展示品牌行、单输入框和搜索按钮;搜索请求走 DSH 本地 web 搜索接口(与智能体 web_search 同源能力),最多展示 10 条,含标题、域名路径、摘要。插件声明了 dsh.bundle,安装后通过 cordis.patch.yml 自动挂进 profile,无需手改配置。当前 npm 包版本在仓库 package.json 中为 0.1.0,许可证 MIT。
核心功能¶
已核实能力如下(均来自仓库 README):
- 侧栏入口:图标为放大镜,名称为「搜索引擎模拟器」,点击后主列切换到搜索页。
- 模拟搜索界面:回车或点击「搜索」提交关键词。
- 真实结果:Host 调用
ctx.web.search,规范化后截断为 10 条;标题在新标签页打开。 - 三种状态:搜索中、无结果、失败(含「本机没配搜索服务」等可读原因)。
- 主题跟随:颜色取自 DSH 主题变量,深浅色自动适配,不依赖外部资源。
Host 半注册同源只读路由 GET /dsh-baidu/search?q=…;浏览器半通过 window.__ModuleLoader__.load 注册 sidebar.panellist 与 main 槽位,id / key 均为 dsh-baidu。两半均为普通 ESM,无构建步骤。
按 demo 定位,插件没有分页、搜索历史、设置项;界面文案固定中文;只显示服务返回顺序的前 10 条。
安装与启用¶
插件以当前 DSH 进程权限运行。安装前建议通读仓库源码与 LICENSE,确认来源与行为符合你的环境策略。
官方安装方式如下(web 可换成你的 profile 名,桌面版默认为 desktop):
# 从本地目录试用 / 开发
dsh plugin --profile web add link:/absolute/path/to/dsh-baidu
# 从 GitHub 源码
dsh plugin --profile web add github:liupengprivate-blip/dsh-baidu
# 从 npm(README 注明暂未发布到 npm)
dsh plugin --profile web add dsh-baidu
装好后若侧栏尚无入口,刷新一次页面。也可在 设置 → 插件 → 添加 中选择本地目录安装。
插件已收录社区插件市场流程(通过 awesome-dsh-plugin 列表);在 dsh-market 中搜索 dsh-baidu 可一键安装,市场侧安装命令与 GitHub 源码方式一致:
dsh plugin --profile web add github:liupengprivate-blip/dsh-baidu
目录页:https://www.skillhub.cn/plugins/liupengprivate-blip/dsh-baidu。
典型用法¶
前提:本机 DSH 的 web 搜索可用,在 设置 → 模型/网络搜索 中配置搜索服务。未配置时页面会提示「本机没有可用的搜索服务」,而不是白屏。
- 左侧栏点击放大镜入口。
- 输入关键词,回车或点「搜索」。
- 查看前 10 条结果;点击标题跳转原网页。
Host 路由常见响应(节选):
| 状态 | 含义 |
|---|---|
200 |
返回 { query, count, truncated, sources: [...] } |
400 |
missing-query |
403 |
forbidden(跨站调用) |
502 |
search-failed |
503 |
search-unavailable |
工作原理与凭据¶
浏览器请求插件 HTTP 路由时不在任何对话回合内,DeepSeek 官方搜索凭据按「代表某个 Agent 发起」解析。因此 Host 会在缺少凭据报错时依次尝试借用存活根 Agent 执行 ctx.web.search;仅用 API Key 的机器则直接走 Key。副作用是:账号登录且同时开多条会话时,本次搜索的请求记录可能落在被借用会话的日志里(仅记录,不影响结果)。跨站请求会被同站校验拒绝。
开发时可于插件目录执行:
npm test
运行 Host 半路由契约测试(node:test,Node >=22)。
适用场景与注意¶
- 适合:需要在 DSH Web UI 里快速验证搜索配置、或把侧栏 + main 面板插件当模板阅读的开发者。
- 不适合:需要分页、历史、多语言 UI 或严格归属当前会话日志的生产级搜索产品(README 明确列为 demo 限制)。
DSH 生态理念是「一切皆插件」;SkillHub 等目录为社区站点,与 DeepSeek / 幻方无官方从属关系,勿当作官方应用商店。
结尾¶
dsh-baidu 把 DSH 本地 web 搜索接到侧栏模拟搜索页,代码量小、改完刷新即生效,适合安装体验或对照 Host / Client 两半写法。更多信息见 GitHub:https://github.com/liupengprivate-blip/dsh-baidu,插件介绍页:https://www.skillhub.cn/plugins/liupengprivate-blip/dsh-baidu。