dsh-web-search-ddg
aooyoo
Zero-token DuckDuckGo search provider for the DeepSeek Harness (DSH) web seam — local headless browser, no API key, no m…
PROJECT TOPICS
PROJECT README
English | 简体中文
DSH(DeepSeek Harness)会话回退插件。永久 bundle 插件:宿主机半 + Web 客户端半,零依赖、零构建步骤。
hook/invoked 事件,负载为
{ source: 'xsj.rewind', phase: 'mark' | 'cancel' | 'commit', targetSeq, hiddenFrom?, hiddenTo?, preview? }。
该事件类型属于本构建的已知保留词条(无读写方),重载安全。# 在任意目录执行(路径指向本仓库克隆位置):
dsh plugin --profile web add <本仓库目录的绝对路径>
# 重启 DSH 进程,并刷新浏览器页面
该命令会把包登记进 profile(~/.dsh/profiles/<name>/package.json 的
dependencies + dsh.profile.bundles),profile 启动时合并本包的
cordis.patch.yml 插入宿主机插件行,Web 客户端扫描自动加载 lib/client.js。
dsh plugin --profile web remove @xsj/dsh-rewind
# 重启 DSH。会话日志中的 rewind 记录无害保留(hook/invoked 为已知类型)。
Session 对象的 deriveMessages(),按已提交区间过滤
surface 节点(带签名缓存)。请求构建、llm/stream 重放不变量、图片检查全部走同一入口,天然一致。
日志不增删改任何消息事件。agent.cancel({ kind: 'user' }, { keepInbox: true })
中断当前回合;排队消息保留,随后从截断点继续。agent/pre-step 瀑布中,待回退会话一旦有新输入消息进入步骤即提交隐藏区间
[targetSeq, 当前日志末尾];新消息在此之后追加,不受影响。data-chat-flow-key,插件按隐藏集合动态维护一条
display:none 样式;取消/切换会话即还原,不改动任何既有渲染器。-1 接管 conversation.chat.node 的 user/steering
渲染器(槽位系统的原生遮蔽机制),行内复刻原生气泡(MessageText / ImageGallery /
Tooltip / writeClipboard),追加 ↺ 按钮。本插件无任何 npm 依赖:Host 半只用 Node 内置模块与注入服务,Client 半经
window.__ModuleLoader__ 从外壳的冻结模块表取 react /
@deepseek-ai/dsh-client-ui-primitives / @deepseek-ai/dsh-client-ui-attachment。
克隆本仓库到任意机器后按「安装」一节操作即可。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。