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

Z.AI 网页搜索 Canary-Builds/dsh-web-search-zai

DeepSeek Harness
Canary-Builds33 天前有提交已提供中文文档扫描:未发现敏感能力

用 Z.AI 密钥为 GLM 路由提供原生联网搜索

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

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

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Canary-Builds/dsh-web-search-zai
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
dsh 原生插件 · search
装得上吗
实装验证未通过(unknown),装前请到仓库确认最近更新与 issue
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 33 天前
档位由哪些信号合成

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

验证判据与等级说明 →
⚠︎ 实装验证未通过(unknown · 2026/10/1) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

发起外部网络请求
查看扫描证据(共 1 处,展示前 1 条)
  • 发起网络请求
    index.js:180
    response = await fetch(ENDPOINT, {
扫描于 2026/11/2(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 提供原生联网搜索
  • 零依赖配置档包

README

由 DeepSeek 最新模型翻译生成
DSH Web Search Z.AI 为模型路由为 Z.AI / GLM 的 DeepSeek Harness(DSH)安装提供原生体验的 web_search,以单个无依赖的 Cordis 插件形式交付,用于宿主 web 接缝(ctx.web)。 随附的 harness 选择 deepseek-official 作为其搜索提供方,这需要一个真实的 DeepSeek API 密钥。在通过 zai 提供方运行 GLM 的安装中,只存在 ZAI_API_KEY——因此每次 web_search 都会以 HTTP 401 失败。本包注册了一个 zai-official 搜索提供方,它通过 Z.AI 的 Anthropic 兼容 Messages API 使用原生 web_search_20250305 服务器工具(glm-5.3)执行搜索,并使用你已有的 ZAI_API_KEY 凭据进行认证,同时将 web 接缝的选择切换为它。Profile Bundle 补丁同时携带这两行;全新安装无需手动编辑组合配置。 工作原理 - 每次搜索发送一个 Messages 请求:模型 glm-5.3、web_search_20250305 服务器工具(max_uses: 3)、max_tokens: 512——来源来自工具结果块,因此补全预算保持很小,并处于 web 工具 60 秒超时之内。
展开完整文档(README 剩余 1 节)
DSH Web Search Z.AI

为模型路由为 Z.AI / GLM 的 DeepSeek Harness(DSH)安装提供原生体验的 web_search,以单个无依赖的 Cordis 插件形式交付,用于宿主 web 接缝(ctx.web)。

随附的 harness 选择 deepseek-official 作为其搜索提供方,这需要一个真实的 DeepSeek API 密钥。在通过 zai 提供方运行 GLM 的安装中,只存在 ZAI_API_KEY——因此每次 web_search 都会以 HTTP 401 失败。本包注册了一个 zai-official 搜索提供方,它通过 Z.AI 的 Anthropic 兼容 Messages API 使用原生 web_search_20250305 服务器工具(glm-5.3)执行搜索,并使用你已有的 ZAI_API_KEY 凭据进行认证,同时将 web 接缝的选择切换为它。Profile Bundle 补丁同时携带这两行;全新安装无需手动编辑组合配置。

工作原理

- 每次搜索发送一个 Messages 请求:模型 glm-5.3、web_search_20250305 服务器工具(max_uses: 3)、max_tokens: 512——来源来自工具结果块,因此补全预算保持很小,并处于 web 工具 60 秒超时之内。
- Z.AI 的 Anthropic 方言将工具结果返回为 tool_result 块,其内容是字符串化的 Python-repr/JSON 混合体,而非标准的 web_search_tool_result 块(这正是随附的 web-search-deepseek 提供方无法简单地重新指向 Z.AI 的原因)。一个引号感知的扫描器从两种形态中提取 title / link / content 记录,也包括标准块以保持向前兼容。
- 瞬态上游故障(Internal Network Failure、5xx、超时)最多重试 3 次;永久性错误会原样呈现,并附带 HTTP 状态。
- 每个请求都会作为 web/zai-search-llm-request 追加到发起会话日志中以便观测,与随附提供方保持一致。
- 注册通过 web.registerSearchProvider 进行,其 disposer 由 fiber 拥有——移除插件行会干净地注销该提供方,并且(在重新应用基础配置时)恢复先前的选择。

要求

- 带有 web 接缝的 DeepSeek Harness(标准 web profile;任何基于 base 的 profile 均可)。
- 一个存储为 ZAI_API_KEY 凭据的 Z.AI API 密钥——web Models 页面会写入它,或直接使用你的凭据存储。无需其他凭据、环境变量或 npm 依赖。

成本说明: 每次搜索都是一次带服务器端搜索的 GLM 模型回合。它的计费类似一次小型模型调用,而不是一次免费的搜索 API 命中。

安装

安装到你的 web profile 中(该包自带其 Profile Bundle 补丁——无需手动添加组合行):

dsh plugin --profile web add @canary-builds/dsh-web-search-zai

重启 DSH。要更新,请再次运行同一命令并重启。
如果你的配置文件的 cordis.patch.yml 已经覆盖了 web 行(任何手动选择的 searchProvider),请移除该覆盖——配置文件补丁在 bundle 补丁之后应用,因此会胜出。同样,在切换到 bundle 安装之前,请移除任何手动插入的 web-search-zai 行;两行具有相同 id 会冲突。

从 git 检出安装(预发布版)

在首次 npm 发布之前,请从克隆安装:

git clone https://github.com/Canary-Builds/dsh-web-search-zai \
~/.dsh/profiles/web/plugins/dsh-web-search-zai
ln -sfn ../plugins/dsh-web-search-zai \
~/.dsh/profiles/web/node_modules/dsh-web-search-zai

然后将这些行添加到 ~/.dsh/profiles/web/cordis.patch.yml(内容与本包的 cordis.patch.yml 相同,行名 dsh-web-search-zai 与未加作用域的符号链接匹配):

- insert:
- id: web-search-zai
name: dsh-web-search-zai

- id: web
name: '@deepseek-ai/dsh-web'
config:
searchProvider: zai-official
fetchProvider: http

使用 patchReload: live 的配置文件无需重启即可应用更改;否则请重启 DSH。

切换回 DeepSeek

将真实的 DeepSeek 密钥存储为 DEEPSEEK_API_KEY,移除此包(dsh plugin --profile web remove @canary-builds/dsh-web-search-zai),并在 web 行中恢复 searchProvider: deepseek-official。在安装期间,此 bundle 的补丁永远不会触及随附的 provider 行——但移除该 bundle 后,基础配置将在下次启动时恢复。

配置

没有设置卡片,也没有 schema 依赖——这是有意为之,以便让该包在零 npm 依赖的情况下可安装。可调项是 index.js 顶部的常量:

| 常量 | 默认值 | 含义 |
| MODEL | glm-5.3 | 执行搜索轮次的模型 |
| MAX_USES | 3 | 每个请求的服务器工具搜索轮数 |
| MAX_TOKENS | 512 | 补全预算(来源在工具块中返回) |
| MAX_ATTEMPTS / RETRY_DELAY_MS | 3 / 700 | 瞬时失败重试策略 |
| REQUEST_TIMEOUT_MS | 45000 | 每次尝试的超时,在 web 工具的预算内 |
| API_KEY_REF | ZAI_API_KEY | 凭据存储引用 |

兼容性

- 面向 0.1.x 中随附的 DSH web 接缝契约(registerSearchProvider / WebSearchProvider);该接缝是稳定的,但未来若 DSH 更改 provider 契约,则需要重新测试。
- Z.AI 工具结果方言以宽容方式解析(Python-repr 和 JSON 形式,嵌套或扁平)。如果 Z.AI 完全更改了结构,搜索将失败并抛出描述性的 WEB_PROVIDER_ERROR,其中指明端点——请提交 issue。

行为说明

- 仅当凭据服务存在时,provider 才会报告 available();当 ZAI_API_KEY 未设置时,搜索会抛出 WEB_PROVIDER_CREDENTIAL_MISSING 并附带设置说明。
- 在一次请求中的多次搜索遍历之间,URL 会被去重;摘要片段上限为 400 个字符;接缝的 maxResults 截断会在下游生效。
- 取消操作会端到端地得到响应(WEB_ABORTED),包括在抓取过程中。

许可证

MIT

开发

单文件 ESM 插件,无构建步骤,无依赖:编辑 index.js,重启 DSH(或在修改 cordis.patch.yml 后依赖实时 profile 补丁重载)。功能冒烟测试:导入 apply,将其挂载到暴露 web.registerSearchProvider 和凭据接缝的模拟 ctx 上,然后调用 provider.search({ query })。报告问题 · Canary Builds
预览分享卡片长什么样 ↓Canary-Builds/dsh-web-search-zai
分享 · DeepSeek Harness Hub
Canary-Builds/dsh-web-search-zai

用 Z.AI 密钥为 GLM 路由提供原生联网搜索

回到顶部