image-scout:为智能体检索、下载并校验真实图片

前言

在 DeepSeek Harness(DSH)里让智能体使用「网上的图」,常见做法是直接 fetch 某个 URL。HTTP 200 并不等于拿到有效位图:同意页、限流页、防盗链跳转或缩略图地址,都可能被当成「下载成功」。image-scout 由社区维护者 2039108952x-lab 提供,在 DSH 中作为「联网工具」类插件,把搜索图库、下载文件与 magic bytes / 尺寸校验串成一条 CLI 工作流,并附带同名 agent skill,便于在 harness 流程里按步骤调用。

下面介绍插件定位、核心命令、安装方式与可复现示例。

这是什么

image-scout 是 DeepSeek Harness 社区插件(npm 包名 dsh-image-scout,当前资料记载最新版为 2.0.2)。它打包一份零 npm 依赖的 Node.js CLI(skills/image-scout/scripts/image-scout.mjs)和一份 skill 说明,用于回答:某个 URL 是否真是照片、下载结果是否可信。

  • 维护者:2039108952x-lab
  • 分类:联网工具(SkillHub 目录:image-scout)
  • 源码与文档:GitHub - 2039108952x-lab/image-scout
  • 许可证:MIT
  • 运行环境:package.json 要求 Node ^22.19.0 || >=24.0.0
  • 无需 API key;README 写明无守护进程、无缓存目录、无配置文件

插件为社区作品,非 DeepSeek 官方产品,亦与 Wikimedia、Openverse 无隶属关系。

核心功能

CLI 暴露四条子命令,README 用表格归纳其保证事项:

命令 作用
search 调用 Wikimedia Commons 或 Openverse API,返回标题、像素尺寸、许可、作者、文件页与直链
list 抓取页面,从 <img>、srcset、og:image 等提取候选图 URL,并在可推导时给出全尺寸地址
download 下载指定 URL;拒绝与声明页面无关的 URL;写入前校验 magic bytes、尺寸与文件大小
verify 对已落盘文件做与 download 相同的三项检查

search 默认源为 Wikimedia;可通过 --source openverse 切换。download 在信任链上比「裸 fetch」多一步溯源:你提供的图片 URL 必须出现在你命名的页面上下文中(查询串与 Wikimedia 缩略图尺寸会做规范化,以便接受全尺寸等价 URL)。

安装与启用

在 DSH 的 web profile 下,README 推荐的注册表安装方式为(带完整性元数据,适配 DSH 常用的 nodeLinker: hoisted):

dsh plugin --profile web add dsh-image-scout@2.0.2

若需固定 Git 标签以保证可重现安装,可使用:

dsh plugin --profile web add github:2039108952x-lab/image-scout#v2.0.2

安装后重启 profile 或等待 skill watcher。插件通过 skill-filesystem 提供者注册自带 skills/ 目录,image-scout skill 即可用,无需复制到 ~/.dsh/skills。确认是否加载:

dsh --profile web --dump-config | grep image-scout

卸载:

dsh plugin --profile web remove dsh-image-scout

注意 skill 名称冲突: DSH 中 customSkillDirs 优先级(300)高于插件内置 skill(600)。若本地已有同名 image-scout skill,会遮蔽插件版本;可改 frontmatter 名称或移出 customSkillDirs。

安装前请自行审阅 仓库源码 与 LICENSE;插件按当前 DSH 进程权限执行,联网下载会访问外部站点。

典型用法

在图库中搜索并下载

先用 search 查关键词,再从结果里取 image 直链做 download(建议带上许可字符串便于侧车元数据):

$ image-scout search --query "red telephone box" --limit 3
$ image-scout download --from search --image-url "https://upload.wikimedia.org/…/Red_Telephone_Box_Defibrillator.jpg" \
    --out output/reference/red-telephone-box-01.jpg --license "CC BY-SA 4.0 - Sebastiandoe5"

成功时 CLI 会输出 VERIFY_OK(格式、尺寸、字节数)、SAVED 路径,以及可选的 .json 元数据侧车(META:)。

使用 Openverse

$ image-scout search --query "cat portrait" --source openverse --limit 3

选定结果后同样走 download --from search。

从网页列举候选再下载

对已有页面 URL,用 list 抽候选图,再用 download 时同时传入 --page-url 与 --image-url,让工具校验 URL 与页面的归属关系:

$ image-scout list --page-url "https://commons.wikimedia.org/w/index.php?search=cat&title=Special:MediaSearch&type=image" --limit 5
$ image-scout download --page-url "https://commons.wikimedia.org/w/…" \
    --image-url "https://upload.wikimedia.org/wikipedia/commons/…/Cat.jpg" --out output/reference/cat-02.jpg

仅校验本地文件

对已下载文件可单独执行 verify,复用与 download 相同的 magic bytes、尺寸与大小检查(细节见仓库 README)。

适用场景与注意

适合谁: 需要在 agent 工作流中引用可核实来源的参考图(例如写作配图、ComfyUI 参考图等 README 关键词场景),且希望避免「下到 HTML 错误页仍当图片用」的 harness 集成者。

不适合替代: 私有图床、需登录或付费 API 的素材库;本插件面向 Wikimedia Commons 与 Openverse 等公开检索路径。

环境: Windows 上若用裸 tarball URL 安装可能触发 ERR_PNPM_MISSING_TARBALL_INTEGRITY,README 建议改用上述 npm 或 github: 形式。经代理访问 GitHub 时,需使用小写的 https_proxy / http_proxy。

安全与合规: 遵守各图库许可与署名要求;download 输出的 --license 字符串应来自搜索结果,勿随意编造。

结尾

image-scout 把「搜图 → 下载 → 证明是位图」收成零依赖 CLI,并以 DSH 插件形式注册 skill,补上了智能体不擅长的一环:在后续流程碰文件之前先验 URL 与字节内容。更多命令参数与发布说明见仓库 README;安装与分类信息亦可对照 SkillHub 目录页与 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye