dsh-deepsearch: Multi-turn In-depth Research within the Same Session with Disk-persisted Citation Reports

前言

在 DeepSeek Harness(DSH)里做调研,宿主自带的 web_search / web_fetch 适合查事实、链接或定义;一次 Agent 搜索则是「问一次、答一次」,拆题、检索、汇总都在一条串行链路上,深度和广度大致相当于单个检索上下文的工作量。主题需要拆成多个子问题、并行交叉核对、再在同一对话里一轮接一轮往下挖时,单靠连跑几次搜索或重复提问,很难既保留上下文又产出可逐轮阅读的带引用报告。

下面介绍社区插件 dsh-deepsearch(维护者 NeptuneRY,GitHub NeptuneRY/dsh-deepsearch)。它在 DSH 里实现「多轮深度搜索」:主会话拆题、派活、汇总,子问题交给独立子代理并行查;每一轮结束落一份 Markdown 报告,多轮在同一主题目录里按编号顺序读,后一轮继承前一轮的未决问题继续挖,而不是把同一个问题问两遍。

这是什么

dsh-deepsearch 是 DSH 工作流类插件(当前 package 版本 1.1.45,MIT 许可证)。定位可以概括为:Multi-round deep research for DeepSeek Harness——同一会话里一轮接一轮往下挖,带引用的报告写在右侧栏(需配合 Better Sidebar)并可落盘到本地目录。

检索本身仍走宿主提供的 web_search / web_fetch(DeepSeek 搜索 API);插件不接管这些工具,只决定查什么、谁去查、查到哪一步算够。它不替换宿主任何工具;是否把检索外包给子代理,由模型自己判断。

和一次 Agent 搜索的差别

Agent 搜索 深度搜索(本插件)
上下文 每次提问从零开始 同一会话连续多轮,后一轮继承前一轮
检索单位 一个会话串行查 每个子问题一个独立子代理,并行查
问题拆分 一次性拆完 每轮重排:上一轮「未决」变成下一轮重点
产出 一段回答 每轮一份 Markdown 报告,同一主题目录按编号读
适合 事实、链接、定义 需要纵深与交叉验证的调研

工作流程可以概括为四步:拆(主会话把主题拆成互不重叠的子问题)、派(每个子问题交给独立子代理并行查,默认 3 个,最多 8 个)、挖(一轮查完主会话看还缺什么,同一会话继续)、汇(每轮一份带引用的报告写入同一主题目录)。

只查一个事实、几条链接或一个定义时,用宿主自带的 web_search 更快;本插件面向「答案不在第一页」、需要拆题与交叉验证的任务——行业与公司研究、尽调、方案对比、技术路线评估、政策与人物背景等。适用范围 README 里也写得很宽,但核心仍是「多子问题 + 并行子代理 + 多轮继承」。

核心功能

两个入口

面板(Better Sidebar 页签 + 左侧栏图标)

右侧栏「深度搜索」标签页有四个页:

页 做什么
深度搜索 输入主题、选轮数(1–10);报告写到 <reportDir>/<主题短名>/NN-<标题>.md;多轮同一会话连续跑,每轮单独落盘,中途失败不丢已完成轮次
Agent 搜索 输入自然语言,在「深度搜索」工作区新开会话跑单次问答,答案同步回面板;可在左侧栏继续追问
历史 按全部 / Agent 搜索 / 深度搜索筛选;深度搜索卡片可「再搜一轮」(沿用原会话追加一轮)
配置 通用项、深度搜索参数、方法笔记

面板依赖 Better Sidebar(dsh-better-sidebar);未安装时仍可通过宿主左侧栏常驻搜索图标打开同一面板。结果卡与历史卡片可将报告「保存到桌面」。

deepsearch 工具

主会话里按需调用,与面板走同一条链路。参数包括:topic(必填)、rounds(1–10,大于 1 走多轮)、use_context、reference_paths(额外只读的文件或目录)。返回 { ok, title, reportPath, ms, summary, rounds };正文为按 deepsearchSummaryChars 截断的摘要,完整报告在文件里。在深度搜索工作区里调用时默认只跑 1 轮;可在设置里打开「限制解除」。

调查方法可编辑

「深度搜索」页底部「调查方法」卡对应包内 methods.md:在面板里改、保存即生效;关开关则不注入任何调查方法。

多轮报告如何累积

多轮不会覆盖上一轮报告:例如第一轮横向对照若干样本,第二轮在同一主题目录追加 02- 报告,只推进第一轮未回答的问题。两份都在同一目录,按 01-、02- 顺序读,第二份是第一份的补充。

安装与启用

插件以当前 DSH 进程权限运行;安装前建议自行查看 GitHub 仓库 源码与 MIT 许可证。

环境要求(来自 package.json):Node >=22;DSH >=0.2.1-rc.1 且 <0.3.0。更早的 0.2.x 预览版缺少 ctx.tools.restrict 与 sessionController,装上也加载不起来。

从 DSH 插件市场安装:搜索 dsh-deepsearch,安装后重启宿主(新 bundle 只在启动时组装)。

从命令行安装:

dsh plugin add dsh-deepsearch        # 默认装到桌面 profile;别的 profile 加 --profile <name>
dsh plugin remove dsh-deepsearch     # 卸载

若从 Git 仓库直接安装,README 建议把提交号钉住(github:NeptuneRY/dsh-deepsearch#<commit>),避免未钉住时随作者推送变化。装完后右侧栏出现「深度搜索」页签即表示成功;若无,先确认已重启且装的是当前使用的 profile。

典型用法

面板快速开始(README 步骤):

  1. 打开右侧栏「深度搜索」。
  2. 输入主题,轮数选 3。
  3. 等跑完:报告在结果卡里,可一键存到桌面。
  4. 想接着挖:在历史里点「再搜一轮」。

数据目录(默认 ~/.dsh-deepsearch,Windows 为 %USERPROFILE%\.dsh-deepsearch):

~/.dsh-deepsearch/
  config.json      # 行为参数
  history.json     # 面板历史
  workspace/       # 面板会话侧栏工作区
  reports/         # reportDir 留空时的默认报告目录
  drafts/          # 未跑完的草稿

常用配置可在面板各页修改,例如:deepsearchSubagents(默认 3,并行子代理数)、deepsearchRounds(默认 1,面板可选 1–10)、reportDir(留空则用 <dataRoot>/reports)、deepsearchTimeoutSec(默认 1200 秒)、referencePaths / referenceEnabled(读本地资料)。完整键表见仓库 README「数据与配置」。

适用场景与注意

适合:需要拆多个子问题、并行检索与交叉核对、同一会话多轮收窄结论,且希望每轮产出带引用、可落盘 Markdown 报告的场景。

不适合或应慎用:只查单一事实或少量链接(用 web_search 更快);在深度搜索工作区内打开 deepsearchWorkspaceToolEnabled 且解除「只跑 1 轮」限制时,递归调用可能消耗大量时间与 tokens。

权限与安全:插件不修改 git 索引;报告由宿主写盘。配置里的 referencePaths 会按开关决定是否只读本地路径——路径与权限仍受当前 DSH 进程约束。

生态说明:DSH 社区插件目录(如 SkillHub 上的 NeptuneRY/dsh-deepsearch)为独立站点,与 DeepSeek / 幻方无官方从属关系;安装来源以市场或上述官方 README 命令为准。

结尾

dsh-deepsearch 把「拆题—并行子代理检索—多轮继承—带引用报告落盘」收进 DSH 工作流:面板与 deepsearch 工具共用一条链路,历史里还可「再搜一轮」延续同一会话。若你已经在用 DSH 0.2.1-rc.1+ 做资料型任务,可以从市场或 dsh plugin add dsh-deepsearch 装起,用三轮深度搜索试一个「答案不在第一页」的主题,对照 reports/ 下逐编号的报告阅读体验。

  • 目录页:https://www.skillhub.cn/plugins/NeptuneRY/dsh-deepsearch
  • GitHub:https://github.com/NeptuneRY/dsh-deepsearch
羽毛球分组比赛记分
小程序二维码

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

Xiaoye