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
DSH(DeepSeek Harness)插件:在 设置 → 插件 页搜索 GitHub 官方插件库,瀑布流浏览并一键安装。
设置 → 插件 → 「插件库搜索」标签页:

# 从 npm 发布(推荐)
dsh plugin --profile web add dsh-plugin-library-search
# 或直接从本 GitHub 仓库安装(无需 npm 发布)
dsh plugin --profile web add "github:AiLi1337/dsh-plugin-library-search"
安装完成后重启 dsh web(本插件是 bundle 插件,进 dsh.profile.bundles 层栈),
刷新浏览器后进入 设置 → 插件 → 插件库搜索。
package.json 里的 npm 包名,优先 pnpm add <npm包名>;
若未发布到 npm,回退为 pnpm add github:<owner>/<repo>。dsh.bundle)安装后写入 dsh.profile.bundles 层栈,重启 dsh web 后生效;cordis.patch.yml insert 行,配置 HMR 实时挂载,刷新页面即可看到。提示:topic:dsh-plugin 下包含大量非可安装内容(文档、皮肤、桌面壳等), 安装按钮会给出失败原因;此时可到仓库页查看其实际安装方式。
插件通过官方 tools 服务注册了三个工具,模型(agent)可以直接调用:
| 工具 | 作用 |
|---|---|
plugin_library_search |
搜索官方插件库(topic:dsh-plugin,按 Star 排序,分页 page 参数,可带 query 过滤) |
plugin_library_install |
按 owner/name 安装插件(自动解析 npm 源,git 源回退;与页面安装按钮同一机制) |
plugin_library_installed |
列出当前 profile 已安装的插件 |
在对话里直接说「帮我搜索一下插件库里的 xxx 插件」或「安装 vlln/plugin-registry」, 模型就会调用这些工具。重启后新会话即可看到工具。
GitHub 搜索 API 未认证限流只有 10 次/分钟(超限返回 HTTP 403)。本插件已内置两层缓解:
github.com/topics/dsh-plugin 页面
(网页通道无认证配额限制),无需任何配置即可继续浏览。GITHUB_TOKEN(或 GH_TOKEN),
搜索配额提升到 30 次/分钟;宿主端另有 5 分钟缓存进一步减少请求。lib/index.js):注册 webServer 路由GET /dsh-plugin-library-search/api/search?q= — 代理 GitHub 搜索 API(topic:dsh-plugin,
带缓存;限流时自动回退抓取 topic 页面 HTML,查询词在结果上过滤)GET /dsh-plugin-library-search/api/installed — 当前 profile 已安装插件名POST /dsh-plugin-library-search/api/install — 解析安装源 → pnpm add → 按官方机制挂载GET /dsh-plugin-library-search/client.js — 自托管浏览器端 bundle,并通过 webServer.tapIndex
注入 window.__DSH_BOOT__ 引导图行lib/client.js):以 DSH module-loader 格式注册
settings.plugins.tab 槽位(order: 20,位于内置「插件列表」order: 10 右侧),
渲染瀑布流 UI。GITHUB_TOKEN 可提升配额。pnpm 在 web 服务进程的 PATH 中(与官方 dsh plugin 相同的要求)。pnpm-workspace.yaml 的
allowBuilds 中放行(与官方提示一致)。MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。