zimai233/dsh-image-search
Multi-engine reverse image search aggregator for DeepSeek Harness. Turn one public image URL into Google Lens / Baidu / Yandex / TinEye / SauceNAO / IQDB / Ascii2d search links.
Listed
0
Browser
Bundle verified
Preview
What it does
Multi-engine reverse image search aggregator: Google Lens, Baidu, Yandex, TinEye, SauceNAO, IQDB, Ascii2d.
Best for
- Researchers tracing the source or reuse of an image across several general-purpose reverse-image engines.
- Illustration and anime searches that benefit from SauceNAO, IQDB, and Ascii2d links alongside general engines.
- Workflows that already have a publicly accessible image URL and want engine links generated in one call.
Not ideal for
- Local or private images that do not have a publicly accessible URL.
- Workflows expecting the plugin to execute searches, fetch result pages, or rank matches; it only constructs URLs.
- Cases where a single preferred search engine already covers the workflow and aggregation adds little value.
README
dsh-image-search
多引擎反向图片搜索聚合器,为 DeepSeek Harness 而生。
Multi-engine reverse image search aggregator for DeepSeek Harness.
把一张公网图片 URL,一键转成 Google Lens / 百度识图 / Yandex / TinEye / Bing 视觉搜索 / 搜狗识图 / SauceNAO / IQDB / Ascii2d 的搜索链接——纯 URL 构造,零网络请求,零依赖。
Turn one public image URL into search links for Google Lens / Baidu / Yandex / TinEye / Bing Visual Search / Sogou / SauceNAO / IQDB / Ascii2d — pure URL construction, zero network calls, zero dependencies.
为什么需要它 / Why
视觉生态里已经有 OCR 和 UI 还原,但没有插件做多引擎反向图片搜索聚合——没有任何东西能把 Google Lens / 百度 / Yandex / TinEye / SauceNAO / IQDB / Ascii2d 一次配齐。
The vision ecosystem has OCR and UI restoration, but nobody aggregates multi-engine reverse image search — nothing puts Google Lens / Baidu / Yandex / TinEye / SauceNAO / IQDB / Ascii2d together in one call. This plugin is the aggregation wedge: 一次提交,全网溯源。
特性 / Features
-
image_search_urls— 返回 JSON 数组[{ id, name, group, url }],每个引擎一条搜索链接。可按engines(逗号分隔 id)或group(通用/插画/动漫)过滤。 -
image_search_engines— 返回按分组归类的全部 9 个引擎(含模板与是否编码),用于发现引擎 id。 -
image_search_best— 返回人类可读的 Markdown 摘要:一行总览 + 每个引擎一条可点击链接。 - 纯 URL 构造,不发起任何实际抓取请求——安全、零依赖、可离线运行。
- 零构建步骤——纯 ESM,发布即运行时代码。无
prepare脚本,无需构建权限。
安装 / Install
# from npm
dsh plugin --profile myprofile add dsh-image-search
# from GitHub (lock the commit for supply-chain hygiene)
dsh plugin --profile myprofile add github:zimai233/dsh-image-search#<sha>
用法 / Usage
用自然语言让 agent 执行:
“帮我用这张图搜一下源头:https://example.com/img.png —— 先列出所有引擎的搜索链接”
Agent 会调用 image_search_urls:
{
"imageUrl": "https://example.com/img.png"
}
返回示例(截取):
[
{ "id": "google", "name": "Google Lens", "group": "通用", "url": "https://lens.google.com/uploadbyurl?url=https%3A%2F%2Fexample.com%2Fimg.png" },
{ "id": "saucenao", "name": "SauceNAO", "group": "插画/动漫", "url": "https://saucenao.com/search.php?url=https://example.com/img.png" }
]
也可以限定引擎 / 分组:
{
"imageUrl": "https://example.com/img.png",
"engines": "google,saucenao",
"group": "插画/动漫"
}
工具参考 / Tool Reference
| Tool | 参数 Parameters | 返回 Returns |
|---|---|---|
image_search_urls |
imageUrl (required), engines?, group?
|
JSON 数组 [{ id, name, group, url }]
|
image_search_engines |
— | 按 group 分组的 JSON,含模板与 encode 标志 |
image_search_best |
imageUrl (required), engines?
|
Markdown:总览行 + 每个引擎一条链接 |
引擎表 / Engines
| id | name | group | encode |
|---|---|---|---|
google |
Google Lens | 通用 | ✓ |
baidu |
百度识图 | 通用 | ✓ |
yandex |
Yandex | 通用 | ✓ |
tineye |
TinEye | 通用 | ✓ |
bing |
Bing 视觉搜索 | 通用 | ✓ |
sogou |
搜狗识图 | 通用 | ✓ |
saucenao |
SauceNAO | 插画/动漫 | ✗ |
iqdb |
IQDB | 插画/动漫 | ✗ |
ascii2d |
Ascii2d | 插画/动漫 | ✗ |
encode 为 true 的引擎走 query-string 参数(图片 URL 需 encodeURIComponent 编码);为 false 的引擎走路径式参数(需原样 URL)。
开发 / Development
npm install
npm test # node:test 直接跑纯核心函数 buildEngineUrls / groupEngines
npm run pack # dry-run publish (pnpm pack equivalent)
许可证 / License
MIT
Frequently Asked QuestionsFAQ
Use the verified command dsh plugin --profile default add github:zimai233/dsh-image-search in a DSH-enabled shell. The command resolves the public package metadata and keeps the plugin attached to the catalog identity shown on this page.
Compatibility follows the bundle and profile status shown above. If a profile is not detected, keep the plugin disabled there and check the repository documentation before enabling it in production.
The GitHub link and activity metadata are the source of truth for releases and maintenance. Revisit this page after a new release to confirm the catalog has observed the latest version.