DeepSeek Harness plugin

dsh-ventus-search

Ventus 搜索:Bing/360/Bilibili 多引擎搜索 + 类 Readability 正文抓取,双 provider 注册进 ctx.web,带设置卡与总开关。

Jump to install

Source facts

Repository
mmzm0808/dsh-ventus-search
Latest update
Aug 19, 2026
Category
Docs & Rendering
GitHub stars
2
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/mmzm0808/dsh-ventus-search
Plugin: dsh-ventus-search
Author: mmzm0808

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer3 files
README.mdSource · read only

🔍 dsh-ventus-search

Ventus 搜索 · DeepSeek Harness 多引擎搜索与正文抓取插件 —— 注册进 ctx.web 的搜索 / 抓取双 provider:Bing、360、Bilibili 三引擎并发搜索,命中评分、URL 去重、跳转链接解码、整体超时兜底、LRU 缓存;正文抓取带广告域名黑名单、类 Readability 抽取与镜像回退。附 Ventus 系列设置卡:总开关、每引擎开关、健康状态与一键测试搜索

<p align="center"> <img alt="license" src="https://img.shields.io/badge/license-MIT-blue"> <img alt="version" src="https://img.shields.io/badge/version-v0.1.0-blueviolet"> <img alt="runtime" src="https://img.shields.io/badge/runtime-dsh%20web-4d6bfe"> <img alt="engines" src="https://img.shields.io/badge/engines-bing%20%7C%20360%20%7C%20bilibili-4d6bfe"> </p>

✨ 特性

分类说明
🔍 多引擎搜索Bing(中文/英文/新闻自动识别)、360(双入口冗余)、Bilibili 官方 API,按 maxConcurrency 并发调度
⭐ 结果质量标题命中 ×3 + 摘要命中 ×2 − 排名权重评分;URL 规范化去重;单域名限额;Bing/360 跳转包装解码
🛡️ 绝不失败单引擎失败隔离(不影响其他引擎);备用查询重试;整体超时到点返回部分结果;gracefulDegradation 兜底返回空结果而非抛错
⚡ 高效查询级 LRU 缓存(TTL 300s);429/5xx/超时自动重试;全程响应 AbortSignal
📄 正文抓取广告/追踪域名黑名单(含子域)、类 Readability 正文抽取、镜像域名回退、体积上限
🎛️ 设置卡Ventus 系列设置卡:总开关、每引擎独立开关、健康状态(状态点 + 上次成功/失败信息)、测试搜索按钮(真实搜索并展示结果)
🔐 安全状态路由 loopback-only + no-store;状态文件原子写入(临时文件 + fsync + rename)

🚀 安装

Git 安装

dsh plugin --profile web add github:mmzm0808/dsh-ventus-search

本地开发安装

dsh plugin --profile web add "<本仓库本地绝对路径>"
  • 仓库已提交完整 lib/ 构建产物,安装无需执行构建脚本(pnpm ≥10 的 allowBuilds 门禁不影响本插件)
  • 安装后重启 dsh(新 bundle 层在启动时加载)
  • DSH 插件开发使用 pnpm;GitHub 分发不要求发布 npm

安装后 profile 的 cordis.patch.yml 会插入一行:

- insert:
    - id: dsh-ventus-search
      name: dsh-ventus-search

📖 使用

1. 设置卡:设置 → Ventus 插件 → Ventus 搜索 2. 总开关:关闭后搜索与抓取 provider 立即不可用(available() 返回 false) 3. 引擎开关:可单独启用/禁用 Bing / 360 / Bilibili(无需改配置) 4. 测试搜索:在输入框输入关键词(默认 "DeepSeek Harness 最新动态"),点「测试搜索」→ 展示耗时、来源数与结果列表(标题可点击、摘要、URL) 5. 健康状态:每引擎显示状态圆点(绿=正常 / 红=失败 / 灰=未测)+ 最近成功时间 / 失败原因

⚙️ 配置(schemastery,全部有默认值)

默认说明
enabledtrue总开关(持久化到状态文件,可被设置卡改写)
stateFilePath~/.dsh/plugins/ventus-search/state.json状态文件路径,~ 运行时展开为 homedir
engines.bingtrue启用 Bing
engines.so360true启用 360 搜索
engines.bilibilitrue启用 Bilibili
engines.bilibiliCookie''Bilibili 搜索请求的 Cookie(空则用内置默认 buvid3)
maxResults8返回来源数上限(seam 还会再截断)
maxDomainResults2单域名最多保留的结果数
requestTimeoutMs8000单引擎单次请求超时
overallTimeoutMs15000整次搜索整体超时,到点返回已有部分结果
maxConcurrency4引擎并发数
retryCount1429/5xx/超时重试次数
gracefulDegradationtrue全部引擎失败时返回空结果而非抛错
cache.enabledtrue查询级 LRU 缓存(容量 100,TTL 300s)
fetch.enabledtrue抓取 provider 开关
fetch.blockedDomains见默认广告/追踪域名黑名单(doubleclick.net 等)
fetch.mirrorDomains{}主站失败时按 host 尝试的镜像域名表

引擎实际启用 = 配置 engines.<id>(硬默认)AND 状态文件 engines.<id>.enabled(运行时覆盖)。

🗂️ 数据与安全

  • 状态文件:~/.dsh/plugins/ventus-search/state.json(原子写入 + fsync);引擎状态含 enabled / health / lastOkAt / lastError,旧版扁平字符串格式自动迁移
  • API(loopback-only,仅本机可访问,Cache-Control: no-store):

- GET /api/ventus-search/state — 当前状态 - PATCH /api/ventus-search/state — body { "enabled"?: boolean, "engines"?: { "bing"?: boolean, "so360"?: boolean, "bilibili"?: boolean } } - POST /api/ventus-search/test — body { "query": string }(≤200 字符)→ 真实搜索并返回 { ok, durationMs, sources, engines }

🛠️ 开发

pnpm typecheck    # tsc --noEmit(需要先按 scripts/build.sh 建 node_modules junction)
pnpm build        # scripts/build.sh:link junction + tsc 编译 host
pnpm build:client # tsdown 产出 lib/client.js(不清理 host lib)
  • host 路由与 provider 注册全部挂在 ctx.effect 下,卸载即清理
  • client 设置卡的轮询/测试请求随 fiber dispose 清理(AbortController)

🐋 Ventus 系列插件

插件说明仓库
🐳 dsh-ventus-whale蓝色大肥鱼 · DeepSeek 虎鲸 3D 桌宠GitHub
📊 dsh-deepseek-usageDeepSeek API 用量监测(悬浮球 + 面板)GitHub
🔍 dsh-ventus-search多引擎搜索与正文抓取(Bing / 360 / Bilibili)GitHub

📄 许可证

MIT License · Copyright (c) 2026 Ventus