在设置中配置多个生图供应商,对话通过 image_generate 调用当前选中的模型;图片保存到工作区 generate/image,并在对话中内联显示。
安装
# npm 包(预构建)
dsh plugin --profile web add dsh-image-generation
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:whiteS18/dsh-image-generation
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
DeepSeek Harness 生图插件:在设置里配置多个生图供应商 / 模型,对话里通过 image_generate 调用当前选中的那一个模型。
结合了官方 @deepseek-ai/dsh-tool-image-generation(对话生图工具)和 dsh-plugin-subscriptions(设置页可配置)的思路,面向 API Key + Base URL 的网关,而不是订阅登录。
功能
- 设置 → 生图配置(左侧导航):添加多个供应商。每个供应商有名称、Base URL、API 格式、API Key,以及一组生图模型。保存后写入
settings.yaml的image-gen段,密钥走凭据服务,不进设置文件。 - 设置 → 插件 → 插件配置 → 图形生成:从上面配置过的模型里只选一个作为对话生图模型,可开关工具、设置默认尺寸 / 质量。
- 对话工具
image_generate:Agent 需要出图时调用当前选中的模型;图片写到工作区generate/image/,并在对话里内联显示,点击可放大。
API 格式
按模型 / 网关选择,不要用聊天用的 Anthropic Messages:
| 格式 | 适用 | 请求 |
|---|---|---|
OpenAI Images (/v1/images/generations) |
gpt-image-2、gpt-image-1、DALL·E,以及兼容 OpenAI Images 的网关 |
POST {base}/images/generations,response_format: b64_json |
xAI Images (/v1/images/generations) |
grok-imagine-image-2.0 |
同上路径,但用 aspect_ratio |
| Gemini / Imagen | gemini-*-image、imagen-* |
{base}/models/{id}:generateContent 或 :predict |
| 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
安装
npm:
dsh plugin --profile <name> add dsh-image-generation
GitHub:
dsh plugin --profile <name> add github:whiteS18/dsh-image-generation
本地检出:
dsh plugin --profile <name> add /绝对路径/dsh-image-gen
[!IMPORTANT] DSH 在进程启动时组合插件。先启动再安装时,必须完全退出并重新打开 DSH(不是刷新页面)。
装完后可用:
dsh --profile <name> --dump-config | grep image-gen
使用
- 打开 设置 → 生图配置,添加供应商和模型,填 Base URL / API 格式 / API Key,点保存。
- 打开 设置 → 插件 → 插件配置,展开 图形生成,选择刚才配置的某一个模型并保存。
- 在对话里让 Agent 生图,它会调用
image_generate。
可选参数:prompt(必填)、size(1024x1024 / 1024x1536 / 1536x1024 / auto)、quality(low / medium / high / auto)、referenceImages(1–5 张已有图片引用,用于编辑;本地文件先 read_image)。
与现有插件的关系
- 官方
@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 under Settings → Plugins → Plugin configuration → Image generation, then conversations call image_generate with that model.
Install:
dsh plugin --profile <name> add dsh-image-generation
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.
链接
同类插件
zhu1090093659/dsh-web-ui#packages/dsh-tool-describe-image★ 7488
给纯文本模型补视觉:describe_image 把本地路径/URL/附件图片交给可配置的 OpenAI 兼容视觉端点,进会话的只有返回文本。
liustack/modlens★ 3959
为纯文本模型架起视觉桥梁:粘贴图片,输出结构化 JSON 证据(OCR、版面、语义)。
ysr666/dsh-vision-router★ 1102
为纯文本 Agent 提供视觉能力:内置免 Key 视觉链 + 像素级视觉工具(看图问答、定位、裁剪、像素对比、取色、OCR、矢量化、抠图、截图);粘贴图片即可用。
Anionex/dsh-vision-toolkit★ 880
让纯文本模型处理视觉任务:粘贴图片后自动切换到 Vision Toolkit 变体,支持图片问答、多图比较、长截图 OCR、截图还原前端 UI、元素定位与像素对比。默认无需 API Key——图片经作者自建的免费服务处理,每台机器每天 100 张;也可改为指向自己的服务商。
dickpy/dsh-imagegen★ 69
面向 DSH Web GUI 的 AI 生图插件:通过可配置的 OpenAI 兼容端点(gpt-image-2 / gpt-image-1 / dall-e-3)实现文生图与图生图,提供 api_url/api_key 设置卡片与侧边栏分栏生图工作台。
fandc520/dsh-comfyui★ 62
让 DeepSeek Harness 的 Agent 直接驱动本地或远程 ComfyUI:comfyui_run / comfyui_object_info / comfyui_workflow 工具生成与编辑图像、视频,附带工作流库(图工作流提取:按分量 / 主流程 / 整体)、加载区分辨率自动匹配、实时队列、SDXL 与 Wan 2.1 模板、配套 skill 与同源媒体代理。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。