前言¶
在 DeepSeek Harness(DSH)里跑智能体,会话会跨工作区、跨天累积。想找回某次提问或某段回答,只能靠翻侧栏、点进单条会话——没有统一入口时,「记得写过什么、在哪个目录下」往往不成体系。社区插件 dsh-super-search(维护者 pengfeis)在 Harness 保存的全部会话上提供全局搜索,且有意收窄检索面:只索引用户提问、助手回答和会话标题,不把推理块、工具调用与输出算进语料。下面介绍它是什么、怎么用,以及安装与配置时要注意的点。
这是什么¶
dsh-super-search 是 DSH 生态中的「记忆」类插件(目录页:skillhub.cn/plugins/pengfeis/dsh-super-search)。一句话定位:Global search over DeepSeek Harness conversations: user questions and assistant answers only——在 Harness 会话全局搜索,范围仅限人与助手可见的对话正文和标题。
按设计排除的内容包括:
- 思考过程(reasoning)块;
- 工具调用及其参数;
- 工具输出;
- Harness 以 user 角色投递的运行时通知(上下文、时间戳、技能目录、后台任务提示等)。
源码与说明见 GitHub:github.com/pengfeis/dsh-super-search。当前资料中的包版本为 1.1.2,许可证 MIT。
核心功能¶
三类入口¶
| 入口 | 作用 |
|---|---|
| 搜索面板 | ⌘⇧K 或侧栏底部入口;可搜所有工作区的所有会话,回车跳到命中会话;范围栏可收窄到某一工作区。 |
super_search 工具 |
智能体用相同规则检索过往会话,支持跨会话;workspace 可限定目录,传 "all" 覆盖全部工作区。 |
ctx.superSearch |
Host 侧共用服务:search({ query, workspace?, sessionId?, limit? }),另有 workspaces()。 |
每次新打开搜索面板都会开始一轮全新搜索:上一次的关键词、结果与仍在飞行中的请求不会残留;面板已打开时再按 ⌘⇧K 则保留当前这一轮。
匹配与排序¶
- 英文词可命中更长词(如
install命中installation);中文连续片段整段匹配,词语不相邻时通过相邻字对匹配(如搜索插件可找到搜索会话插件)。 - 多词默认 AND;无法全部命中时退化为部分匹配并提示。
- 结果按得分排序,考虑词频与精确度、消息是提问还是回答、会话标题是否命中;标题与正文一并检索。
- 匹配不区分大小写。
搜索范围¶
语料覆盖本 Harness 下所有在线会话与已存储会话、所有工作目录。面板范围栏、工具的 workspace 参数或 Host 的 workspace 可收窄范围。工具默认 workspace 为调用方智能体所在工作区;workspace: "all" 可搜全部工作区。
实现概要(便于排错)¶
索引是会话日志的派生缓存,日志仍为唯一事实来源;语料来自 ctx.sessions(在线)与 ctx.sessionPersistence(已存储)。浏览器侧请求 /api/super-search 与 /api/super-search/workspaces,经 ctx.connection.admit() 与主应用同一套浏览器鉴权。
安装与启用¶
插件在 Harness 进程内加载,安装前宜自行阅读仓库源码与 MIT 许可证,确认符合你对第三方插件的信任要求。
图形界面:在 Plugins → Add plugin 中安装并启用;启用后侧栏底部出现搜索面板,快捷键 ⌘⇧K。已在打开的页面需重新加载后才会挂上客户端模块。
命令行 / 包规格(以 README 原文为准):
# 智能体侧
plugin_manager install_bundle target=git+https://github.com/pengfeis/dsh-super-search.git#v1.1.2
# CLI
dsh plugin --profile <profile> add git+https://github.com/pengfeis/dsh-super-search.git
v1.1.2 Release 附带 dsh-super-search-1.1.2.tgz 及 sha256,可供离线安装。
典型用法¶
人在浏览器里搜¶
- 启用插件后,侧栏底部打开搜索面板,或按
⌘⇧K。 - 输入关键词;需要时用范围栏限定工作区。
- 在结果列表中选一条,回车进入对应会话。
智能体调用工具¶
智能体在对话中可调用 super_search,规则与面板一致。限定当前工作区时用默认 workspace;要跨全部工作区时传 workspace: "all"。
Host 侧编程调用¶
插件向 Host 暴露 ctx.superSearch,例如:
search({ query, workspace?, sessionId?, limit? })执行检索;workspaces()列出可用工作区范围。
未传 limit 时,返回条数受插件配置 maxResults 约束(默认见下一节)。
配置¶
| 字段 | 默认值 | 含义 |
|---|---|---|
maxResults |
50 |
调用方未指定 limit 时,一次搜索返回的结果条数上限。 |
示例(README):
- id: super-search
name: 'dsh-super-search'
config:
maxResults: 100
适用场景与注意¶
适合谁:长期在 DSH 中保留大量会话的开发者或智能体使用者,需要按关键词找回「自己问过什么、助手答过什么」,或按标题定位会话,且不希望被工具轨迹和推理噪声淹没结果。
注意:
- 检索面刻意变窄,查工具输出或思考过程本插件不会覆盖,需回到原会话日志或其它能力。
- 插件与当前 DSH 进程权限一致,能访问的会话范围即 Harness 已加载与持久化的语料;跨机或未同步的目录不在此索引内,除非它们属于同一 Harness 实例的工作区模型。
- 社区目录 skillhub.cn 为独立站点,与 DeepSeek / 幻方无官方从属关系;安装来源以维护者仓库与目录页说明为准。
开发与维护者自测时,README 提供针对真实 session.jsonl 的测试命令;会话日志路径为 $DSH_HOME/sessions/<工作区>/<会话 id>/session.v4.jsonl.zstd,可用 zstd -dc 解压后喂给 node test/search.test.mjs 等脚本。
结尾¶
dsh-super-search 解决的是 Harness 多工作区、多会话下的「对话级」找回问题:面板快捷键、智能体工具与 Host API 共用同一套索引与匹配规则。需要安装或查版本时,可看目录页 pengfeis/dsh-super-search,代码与发行物在 GitHub 仓库。