🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

多引擎搜索抓取 meto-ventus/dsh-ventus-search

DeepSeek Harness
meto-ventus72 天前有提交已提供中文文档扫描:含敏感能力

并发搜索多个引擎并抽取网页正文供模型使用

28.9/100
综合分
2
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/19 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add meto-ventus/dsh-ventus-search
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · platform
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 72 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-ventus-search(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/9/24 00:03:26

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 16 处,展示前 16 条)
  • 发起网络请求
    lib/client.js:330
    const response = await fetch(STATE_URL, {
  • 发起网络请求
    lib/client.js:356
    const response = await fetch(STATE_URL, {
  • 发起网络请求
    lib/client.js:391
    const response = await fetch(STATE_URL, {
  • 发起网络请求
    lib/client.js:413
    const response = await fetch(TEST_URL, {
  • 读取本地文件
    lib/state.js:76
    if (!existsSync(this.filePath)) {
  • 读取本地文件
    lib/state.js:82
    this.state = parseState(readFileSync(this.filePath, 'utf8'), fallbackEnabled);
  • 写入本地文件
    lib/state.js:141
    mkdirSync(dirname(this.filePath), { recursive: true });
  • 写入本地文件
    lib/state.js:145
    writeFileSync(fd, JSON.stringify(this.state, null, 2));
  • 写入本地文件
    lib/state.js:151
    renameSync(temp, this.filePath);
  • 发起网络请求
    lib/fetch/provider.js:63
    async fetch(request, signal) {
  • 发起网络请求
    lib/fetch/provider.js:104
    const response = await fetch(target, {
  • 发起网络请求
    lib/search/engines.js:47
    const response = await fetch(url, {
  • 发起网络请求
    lib/client/index.js:307
    const response = await fetch(STATE_URL, {
  • 发起网络请求
    lib/client/index.js:336
    const response = await fetch(STATE_URL, {
  • 发起网络请求
    lib/client/index.js:381
    const response = await fetch(STATE_URL, {
  • 发起网络请求
    lib/client/index.js:408
    const response = await fetch(TEST_URL, {
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-web
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 多引擎并发搜索
  • 评分去重
  • 网页正文抽取

README

由 DeepSeek 最新模型翻译生成
🔍 dsh-ventus-search 🧩 一键整合安装:dsh-ventus-plugins —— 本插件已并入整合包,也可按本仓库方式单独安装。 Ventus 搜索 · DeepSeek Harness 多引擎搜索与正文抓取插件 —— 注册进 ctx.web 的搜索 / 抓取双 provider:Bing、360、Bilibili 三引擎并发搜索,命中评分、URL 去重、跳转链接解码、整体超时兜底、LRU 缓存;正文抓取带广告域名黑名单、类 Readability 抽取与镜像回退。附 Ventus 系列设置卡:总开关、每引擎开关、健康状态与一键测试搜索。 ✨ 特性 | 分类 | 说明 | | 🔍 多引擎搜索 | Bing(中文/英文/新闻自动识别)、360(双入口冗余)、Bilibili 官方 API,按 maxConcurrency 并发调度 | | ⭐ 结果质量 | 标题命中 ×3 + 摘要命中 ×2 − 排名权重评分;URL 规范化去重;单域名限额;Bing/360 跳转包装解码 | | 🛡️ 绝不失败 | 单引擎失败隔离(不影响其他引擎);备用查询重试;整体超时到点返回部分结果;gracefulDegradation 兜底返回空结果而非抛错 |
展开完整文档(README 剩余 1 节)
🔍 dsh-ventus-search
🧩 一键整合安装:dsh-ventus-plugins —— 本插件已并入整合包,也可按本仓库方式单独安装。

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

✨ 特性

| 分类 | 说明 |
| 🔍 多引擎搜索 | 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,全部有默认值)

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

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

🗂️ 数据与安全
- 状态文件:~/.dsh/plugins/ventus-search/state.json(原子写入 + fsync);引擎状态含 enabled / health / lastOkAt / lastError,旧版扁平字符串格式自动迁移
- API(仅限回环,仅本机可访问,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-usage | DeepSeek API 用量监测(悬浮球 + 面板) | GitHub |
| 🔍 dsh-ventus-search | 多引擎搜索与正文抓取(Bing / 360 / Bilibili) | GitHub |

📄 许可证

MIT License · Copyright (c) 2026 Ventus
预览分享卡片长什么样 ↓meto-ventus/dsh-ventus-search
分享 · DeepSeek Harness Hub
meto-ventus/dsh-ventus-search

并发搜索多个引擎并抽取网页正文供模型使用

这是你的仓库?认领条目

回到顶部