npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@qzsy/dsh-image-generation

v0.1.3

Published

DSH 生图插件:在设置中配置多个生图供应商/模型,并在对话中通过 image_generate 调用当前选中的模型。

Readme

@qzsy/dsh-image-generation

Fork of dsh-image-generation by whiteS18 (MIT). See NOTICE for changes; runtime behavior is preserved.

Install

dsh plugin add @qzsy/dsh-image-generation

Upstream README

dsh-image-generation

DeepSeek Harness 生图插件:在设置里配置多个生图供应商 / 模型,对话里通过 image_generate 调用当前选中的那一个模型。

结合了官方 @deepseek-ai/dsh-tool-image-generation(对话生图工具)和 dsh-plugin-subscriptions(设置页可配置)的思路,面向 API Key + Base URL 的网关,而不是订阅登录。

功能

  • 设置 → 生图配置(左侧导航):添加多个供应商。每个供应商有名称、Base URL、API 格式、API Key,以及一组生图模型。配置存在 profile 的 image-gen 插件条目里(DSH ≥ 0.1.6 为 volatile 字段、保存即热生效;≤ 0.1.5 写入 settings.yaml 的 image-gen 段),密钥走凭据服务,不进设置文件。
  • 设置 → 插件 → 本插件详情 → 图形生成(≤ 0.1.5 为 设置 → 插件 → 插件配置):从上面配置过的模型里只选一个作为对话生图模型,可开关工具、设置默认尺寸 / 质量。
  • 对话工具 image_generate:Agent 需要出图时调用当前选中的模型;图片写到工作区 generate/image/,并在对话里内联显示(240px 缩略图 + Lightbox 全屏预览)。
  • 图像编辑:4 种 API 格式全部支持 referenceImages(1–5 张参考图)。OpenAI / xAI 格式自动切换到 /images/edits 端点;Gemini / chat 格式把参考图一并放进请求。
  • 中英双语界面,无构建步骤,要求 Node >= 22.19。

API 格式

按模型 / 网关选择,不要用聊天用的 Anthropic Messages:

| 格式 | 适用 | 请求 | |------|------|------| | OpenAI Images (/v1/images/generations) | gpt-image-2、gpt-image-1、DALL·E,以及兼容 OpenAI Images 的网关 | POST {base}/images/generations(编辑走 /images/edits),response_format: b64_json;网关拒绝该参数时自动去掉重试一次 | | xAI Images (/v1/images/generations) | grok-imagine-image-2.0 | 同上路径,但用 aspect_ratio;quality 按 xAI 能力映射(high→medium,auto 不下发) | | Gemini / Imagen | gemini-*-image、imagen-* | 按模型名自动分流:imagen-* 走 :predict,其余走 :generateContent;官方 host 自动换 x-goog-api-key 头 | | OpenAI Chat Completions | 在 chat 响应里返回图片的聚合网关 | POST {base}/chat/completions |

Base URL 填到 /v1(或 Gemini 的 /v1beta)这一层,插件会补上后面的路径。例如:

  • OpenAI:https://api.openai.com/v1
  • xAI:https://api.x.ai/v1
  • Gemini 官方:https://generativelanguage.googleapis.com/v1beta
  • 本地网关:http://127.0.0.1:8317/v1

API Key 通过凭据服务存储,环境变量名按 IMAGE_GEN_<供应商ID大写>_API_KEY 规则引用,不会写进设置文件。

安装

npm:

dsh plugin --profile <name> add dsh-image-generation

[!WARNING] 0.1.0 的 __ModuleLoader__ id 仍是 dsh-image-gen,DSH 会按包名 dsh-image-generation 校验并拒绝启动。请安装 0.1.1 或更新版本(当前 0.1.2)。已装 0.1.0 的 profile:

dsh plugin --profile <name> add [email protected]

然后完全退出并重新打开 DSH。

GitHub:

dsh plugin --profile <name> add github:whiteS18/dsh-image-generation

本地检出:

dsh plugin --profile <name> add /绝对路径/dsh-image-generation

[!IMPORTANT] DSH 在进程启动时组合插件。先启动再安装时,必须完全退出并重新打开 DSH(不是刷新页面)。

装完后可用:

dsh --profile <name> --dump-config | grep image-gen

使用

  1. 打开 设置 → 生图配置,添加供应商和模型,填 Base URL / API 格式 / API Key,点保存。
  2. 打开 设置 → 插件 → 插件配置,展开 图形生成,选择刚才配置的某一个模型并保存。
  3. 在对话里让 Agent 生图,它会调用 image_generate。

可选参数:prompt(必填)、size(1024x1024 / 1024x1536 / 1536x1024 / auto)、quality(low / medium / high / auto)、referenceImages(1–5 张已有图片引用,用于编辑;本地文件先 read_image)。

配置项默认值

| 配置项 | 默认值 | 说明 | |--------|--------|------| | enabled | true | 是否启用 image_generate 工具(关闭时工具仍注册,调用会被拒绝) | | providerId / modelId | 空 | 当前选中的生图供应商与模型 | | defaultSize | 1024x1024 | 工具未显式传 size 时的默认尺寸 | | defaultQuality | auto | 工具未显式传 quality 时的默认质量 | | apiFormat(供应商级) | openai-images | 新建供应商时的默认 API 格式 |

与现有插件的关系

  • 官方 @deepseek-ai/dsh-tool-image-generation 只有工具、没有设置页;本插件自带设置页,一般不必再装官方包。
  • npm 上另有同名风格的 dsh-image-gen(其他作者)。本包发布名为 dsh-image-generation,避免抢名。
  • dsh-plugin-subscriptions 走的是 ChatGPT / Grok 订阅登录,也会注册名为 image_generate 的工具。两边同时安装可能抢同一个工具名。需要 API 网关生图时用本插件;需要订阅生图时用 subscriptions。

卸载

dsh plugin --profile <name> remove dsh-image-generation

English

Image-generation plugin for DeepSeek Harness. Configure providers and models under Settings → Image generation, pick exactly one model on the plugin detail page (Settings → Plugins → this plugin → Image generation; on DSH ≤ 0.1.5: Settings → Plugins → Plugin configuration), then conversations call image_generate with that model.

All four API formats (OpenAI Images, xAI Images, Gemini/Imagen, OpenAI chat-completions gateways) support image editing via referenceImages (1–5 images). API keys are stored through the credentials service. Generated files land in generate/image/ of the session workspace and are shown inline in the conversation. Chinese and English UI. Requires Node >= 22.19.

Install:

dsh plugin --profile <name> add dsh-image-generation

0.1.0 registered the client as dsh-image-gen and DSH refused to boot. Use 0.1.1 or later (dsh plugin --profile <name> add [email protected]), then fully quit and reopen DSH.