DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
P

dsh-plugin-nuaa-search

Plugin Nuaa Search

DSH 免 key 网页搜索插件:向 ctx.web 注册 local-search 搜索提供方,按降级链抓取 Bing 中文站/360/SearXNG 的真实结果,替换官方 DeepSeek web_search,不需要任何 API key。面向校园网等拿不到官方 key 的环境。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:Oxygen640/dsh-plugin-nuaa-search#6dbc7b15bd544f7daf784922874536ea4278c586
README兼容性版本

兼容性与来源证明

Plugin Nuaa Search 以 dsh-plugin-nuaa-search 发布,当前版本为 0.1.2。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
github
Registry 更新时间
2026/10/25

版本

0.1.2stable
2026/10/25
0.1.1stable
2026/10/25
0.1.0stable
2026/10/24

相关插件

正在加载相关插件…

最新版
0.1.2
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
any
许可证
MIT
发布源
github
GitHub
★ 1
周下载
0
最近提交
2026/10/25
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 search-research 分类下经过校验的插件。

Free Searchdsh-free-searchDeepSeek Harness 的免费网页搜索:27 个引擎(Bing/DuckDuckGo/AnySearch/SearXNG/Exa/Tavily/Keenable/Firecrawl/Parallel/You.com 无需密钥;通过 MCP 支持 Zhihu 全局/站内搜索,以及 Perplexity/SerpBase/DeepSeek(官方 + 原生工具/搜索)/Baidu/Kimi/Aliyun/Douba)Ab Wechat Scrapedsh-ab-wechat-scrape--- description: "树外 wechat_scrape 工具:获取微信公众号文章,过滤推广区块,并将每篇文章保存为 Markdown 文件,供此机器的 dsh 配置文件维护者使用。" kind: "package-reference" ---Ab Market Researchdsh-ab-market-research一个树外 DeepSeek Harness 插件:将 trade_search 工具(多轮扩展方面的查询规划、出版商级别排序、来源多样性、JSON 快照)及其浏览器卡片集成在一个包中。Arisdsh-arisARIS research-workflow 技能作为 DeepSeek Harness 捆绑包:包含 82 项技能,以及通过 Codex 进行的跨模型对抗性审查。

README

dsh-plugin-nuaa-search

A zero-key web search provider for DeepSeek Harness's built-in web_search tool.

It registers a search provider (local-search) into the harness's ctx.web seam and answers queries by scraping real search engines — no official DeepSeek API key, no third-party search API key, no settings card.

中文说明见 README.zh.md。

Third-party community plugin, not affiliated with Nanjing University of Aeronautics and Astronautics. The nuaa in the name only helps students find it in the market; the plugin itself is network-agnostic.

Why

@deepseek-ai/dsh-web-search-deepseek sends every search to DeepSeek's official Anthropic-compatible endpoint, which needs an official API key. On a network or plan where that key is unavailable (for example a mainland-China campus gateway that only serves an OpenAI-compatible endpoint), web_search fails. This plugin replaces the provider instead of the endpoint: it implements the harness's own WebSearchProvider interface and fetches results itself.

Install

This package is not published to npm (npm signup was unavailable for the author), so install it from the market or from a prebuilt release tarball — do not run dsh plugin add <package-name>, there is no registry entry behind that name.

From the market (easiest): open DSH → Settings → Plugins, search nuaa, and install. Listing: https://awesome-dsh-plugin.com/p/Oxygen640/dsh-plugin-nuaa-search/

From the prebuilt tarball:

dsh plugin --profile desktop add "https://github.com/Oxygen640/dsh-plugin-nuaa-search/releases/latest/download/dsh-plugin-nuaa-search.tgz"

From source:

dsh plugin --profile desktop add github:Oxygen640/dsh-plugin-nuaa-search

Restart the harness. The bundle patch points web.searchProvider at local-search and disables the official web-search-deepseek row (re-enable it in your profile's cordis.patch.yml if you want it back).

Backends

auto (default) = bing → so360 → searxng: the first backend that returns results wins, so a blocked or broken engine costs one timeout, not the whole search.

Query variants. Chinese long-tail queries break Bing's ranking: 南京航空航天大学图书馆 returns the official library pages, while 南京航空航天大学图书馆 预约座位 returns generic "南京市" pages instead. So each search also runs a second variant with trailing intent words (开放时间, 预约座位, 几点, 怎么…, 地址, …) stripped, and keeps whichever result set is more relevant to the entity phrase (longest-common-substring coverage; ties keep the original query so ordinary searches are unaffected). Measured on the failing case: 1/8 → 7/8 results from nuaa.edu.cn. Turn it off with stripIntent: false.

BackendStatusNotes
bingdefault, ~270msBing China HTML: direct URLs, snippets, publish dates
so360fallback360 Search HTML: direct URLs
searxngneeds your instanceJSON API; the instance must enable format=json
baiduoften blockedreturns [] when the anti-bot page appears, never the challenge page

Config

Passed as the row config in cordis.patch.yml, or via environment variables as fallback.

KeyDefaultMeaning
backendautoone backend or a chain ("bing,so360")
maxResults8cap; the caller's request.maxResults is also honored
deadlineMs20000internal deadline — returns what it has instead of hanging
backendTimeoutMs8000per-backend timeout
searxngUrl—instance base URL
userAgentChrome 126 UAuser agent used for scraping
logtrueone summary line per search in the host log
stripIntenttruealso search the entity phrase with trailing intent words stripped

Environment fallbacks: SEARCH_BACKEND, SEARCH_MAX_RESULTS, SEARCH_DEADLINE_MS, SEARXNG_URL, SEARCH_USER_AGENT.

Test

node --test test/provider.test.mjs

17 tests: backend-chain and config logic, the provider contract, query-variant relevance, live network searches, maxResults, deadline, cancellation (including an already-aborted signal), and query length normalization.

Releasing a new version

No registry is involved, so a release is: bump version in package.json, then build and attach the tarball under the same asset name so the latest/download/ URL keeps working.

npm pack --pack-destination release
ren release\dsh-plugin-nuaa-search-0.1.2.tgz dsh-plugin-nuaa-search.tgz

Then publish a GitHub release and attach dsh-plugin-nuaa-search.tgz.

Limitations

  • HTML scraping: a Bing markup change needs a parser update (switch backend to so360 meanwhile).
  • Bing ranks multi-token Chinese queries badly. It handles a clean entity name (南航图书馆, 南京航空航天大学图书馆) well, but degrades toward generic city pages when extra qualifiers pile up — 南京航空航天大学将军路校区图书馆 already returns "南京市". The query-variant fix covers the common "entity + intent word" shape, not this one.
  • site: queries are not supported by the HTML endpoint and are passed through as plain text.
  • Relevance is the search engine's; results are passed through, not rewritten or summarized.
  • publishedAt is only set when a date is readable at the start of the snippet — never invented.
  • One query per call, no pagination.
  • Queries are truncated to 200 characters, which is where search engines stop honoring them anyway.

License

MIT