DeepSeek Harness 插件

dsh-image-tools-junelear

Multi-provider image generation and editing tools for DeepSeek Harness(英文原文)

跳到安装方式

来源信息

GitHub 仓库
JuneLearn/dsh-image-tools
最近更新
2026年8月16日
分类
模型与服务商
GitHub stars
1
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/JuneLearn/dsh-image-tools
插件名:dsh-image-tools-junelear
作者:JuneLearn

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器4 个文件
README.zh-CN.md来源说明 · 只读预览
README 语言

DSH Image Tools

为 DeepSeek Harness 提供统一的多服务图片生成与编辑能力,通过中性的 image-generateimage-edit 工具连接 OpenAI Images 兼容服务与 Google Gemini Interactions API。

![DSH Image Tools 生成的蓝色鲸鱼女仆示例](./docs/images/demo.jpg)

由插件调用 image-generate 生成,展示 16:9 图片输出效果。

English

第三方服务推荐(含邀请链接)

> > 如果你正在寻找支持 OpenAI 兼容接口的 API 中转服务,可以了解一下 > WPIronman API 中转站。这是我的邀请 > 链接;通过该链接注册可能会为我带来邀请奖励,具体活动规则和优惠以服务商页面 > 为准。本插件与该服务相互独立,不要求使用任何指定中转站,请根据价格、稳定性 > 和隐私政策自行选择。 > > 新用户可使用兑换码 99F509ABC6C38F77 兑换赠送额度。

目录

  • [第三方服务推荐(含邀请链接)](#第三方服务推荐含邀请链接)
  • [安装](#安装)
  • [使用](#使用)
  • [功能](#功能)
  • [支持的协议](#支持的协议)
  • [从 dsh-image2-draw 迁移](#从-dsh-image2-draw-迁移)
  • [资产与元数据](#资产与元数据)
  • [失败与计费安全](#失败与计费安全)
  • [贡献](#贡献)
  • [测试](#测试)
  • [兼容性](#兼容性)
  • [支持](#支持)
  • [致谢](#致谢)
  • [许可证](#许可证)

安装

环境要求

  • Node.js 20 或更高版本,建议 Node.js 24 LTS;
  • Git;
  • pnpm;
  • DeepSeek Harness 0.1.0-rc.6

从源码克隆并运行

下面是从 git clone 到可运行的最短路径,不要求已有 Harness 源码仓库:

git clone https://github.com/JuneLearn/dsh-image-tools.git
cd dsh-image-tools
npm install
npm test
npx --yes -p @deepseek-ai/dsh dsh plugin --profile web add .
npx --yes -p @deepseek-ai/dsh dsh web

Web 默认监听 http://127.0.0.1:3080

直接从 GitHub 安装

不需要本地克隆时:

corepack enable
npx --yes -p @deepseek-ai/dsh dsh plugin --profile web add github:JuneLearn/dsh-image-tools
npx --yes -p @deepseek-ai/dsh dsh web

使用 Harness 源码仓库时,可在 D:\deepseek-harness 中运行:

pnpm install
pnpm dsh plugin --profile web add github:JuneLearn/dsh-image-tools
pnpm dsh web

包内的 dsh.bundle 声明会自动挂载 Host 和 Web 客户端,不需要手工编辑 profile patch。

使用

1. 配置图片服务

1. 打开“设置 > 插件 > 插件配置 > 图片工具”。 2. 点击“添加服务”,在独立编辑页选择 OpenAI 官方、OpenAI 兼容或 Google Gemini。 3. 填写服务名称、接口地址、API Key 和模型名并保存。 4. 可选:点击“测试连接”验证已保存的 URL、Key 和模型;测试不会触发图片生成。

API Key 通过 DSH credentials 保存,普通设置状态不会返回密钥。多个服务按列表从上到下 排列;未显式指定服务时,第一项拥有最高优先级。

![DSH Image Tools 有序服务配置界面](./docs/images/configuration.png)

2. 生成图片

配置完成后,不需要写工具名、模型名或参数,直接在聊天中说你想要什么:

> 帮我生成一个蓝色鲸鱼女仆萌系图片

DSH 会自动调用 image-generate,并按设置中的服务顺序寻找可用服务。想控制数量、比例 或画质时,也可以继续用自然语言描述,例如:

> 帮我生成两张 16:9 的未来城市电影概念图,画质高一点。

<details> <summary>查看可用工具参数</summary>

  • prompt:必填提示词;
  • profile:可选服务 ID;省略时按配置顺序尝试,指定时只调用该服务;
  • count:1~8,默认 1;
  • sizeautosquareportraitlandscape、OpenAI WIDTHxHEIGHT,或

Gemini 分辨率档位;

  • aspect_ratioauto 或模型支持的 W:H
  • resolution:Gemini 的 auto0.5K1K2K4K
  • qualityoutput_formatcompressionbackground:仅在模型能力支持时可用。

指定画面比例时优先只传 aspect_ratio。为兼容模型偶尔生成的冗余参数,同方向组合 (如 portrait + 3:4)会采用更具体的 aspect_ratio;方向相反时仍会拒绝。

</details>

3. 编辑图片

生成后可以在同一段对话里直接接着修改:

> 把刚才那张图的背景改成海底城堡,角色保持不变。

DSH 会自动引用上一张结果并调用 image-edit。也可以上传当前会话工作目录中的本地图片 作为参考图。

<details> <summary>查看图片编辑参数</summary>

  • refs:必填数组;接受当前会话工作目录内的相对路径或 asset:image-*
  • mask:可选;必须是与第一张参考图同尺寸且带 alpha 通道的 PNG,并且模型支持蒙版。

不接受远程 URL 参考图,也不允许路径越出当前会话工作目录。

</details>

4. 管理服务顺序

设置列表只显示每个服务的名称、类型、模型、API Key 状态和行操作。使用上移、下移按钮 调整故障转移顺序;添加或编辑时会进入独立详情页。OpenAI 兼容中转不支持模型列表时, 连接测试会显示“服务可达,但无法验证模型”。

功能

  • 管理多个有序图片服务,每个服务使用独立 API Key 和一个模型名;
  • 提供 OpenAI 官方、OpenAI 兼容和 Google Gemini 三种配置预设;
  • 支持文生图、图生图、多参考图、蒙版和最多 8 张的顺序批量生成;
  • 支持尺寸、宽高比、分辨率、质量、格式、压缩和背景参数,实际能力由协议和模型决定;
  • 在聊天中预览结果,并将图片保存到会话工作目录的 outputs/images/
  • 为每张图片生成稳定的 asset:image-* 引用和脱敏 JSON 元数据;
  • 对连接类错误按服务顺序故障转移,不自动重试可能已经计费的请求。

支持的协议

协议鉴权生成编辑主要输出控制
OpenAI ImagesAuthorization: Bearer/images/generations/images/edits尺寸、质量、格式、压缩、背景、蒙版
Gemini Interactionsx-goog-api-key/v1beta/interactions同一端点携带参考图宽高比、分辨率、格式

OpenAI 兼容服务的实际模型和参数支持取决于服务商实现。插件会在请求前校验参数,不会 静默忽略不支持的选项。Gemini 请求固定使用 store=false,不依赖供应商会话状态。

从 dsh-image2-draw 迁移

这是一个新包和新设置命名空间,不读取旧插件的配置、工具结果或结果卡。先卸载旧包, 再安装新包:

npx --yes -p @deepseek-ai/dsh dsh plugin --profile web remove dsh-image2-draw
npx --yes -p @deepseek-ai/dsh dsh plugin --profile web add github:JuneLearn/dsh-image-tools

旧 API Key 不会自动复制。安装后请在“设置 > 插件 > 插件配置 > 图片工具”中重新建立服务。

资产与元数据

每张输出图片都带有同名 JSON sidecar:

outputs/images/image-YYYYMMDD-HHMMSS-xxxxxxxx.png
outputs/images/image-YYYYMMDD-HHMMSS-xxxxxxxx.json

asset:image-YYYYMMDD-HHMMSS-xxxxxxxx 可跨进程重新解析。文件使用随机后缀和独占写入, 不会覆盖已有结果。JSON 记录提示词、档案 ID、协议、模型、参数、时间、耗时、图片尺寸、 asset ID,以及可用的 revised prompt、request ID 和非敏感 usage;不会记录 API Key、完整 响应正文或请求头。

失败与计费安全

  • 批量请求按顺序逐张执行,单次上游请求固定只取一张图片;
  • 未指定 profile 时,首张图片因网络、超时、429、5xx、鉴权或缺少 Key 失败,会尝试

下一个服务;单个服务内部不重试;

  • 参数错误、能力不匹配、无效参考图或蒙版、内容审核和取消不会触发服务切换;
  • 某个服务已经生成至少一张图片后,后续失败会返回部分结果,不再切换服务;
  • 显式指定 profile 时只调用该服务;
  • 超时和其他可能已经计费的错误不会自动重试。

贡献

欢迎通过 issue 报告可复现的问题或提出功能建议,也欢迎提交范围清晰的 pull request。 提交前请运行下方测试,并避免在测试、日志或示例配置中提交真实 API Key。

测试

npm install
npm test
npm pack --dry-run

自动化测试使用模拟 HTTP 响应,不调用真实图片 API。真实 API 冒烟测试应由开发者使用 专用凭据和低成本提示词显式执行。

兼容性

当前目标为 DeepSeek Harness 0.1.0-rc.6 的公开双端插件、settings、credentials、 attachments、tools、client slots 和 WebServer 接口。Harness 仍处于 Developer Preview; 升级后若插件无法加载,应先核对这些接口与 dsh.client.inject 声明。

支持

请在 GitHub Issues 提交问题。报告中请包含 Harness 与 Node.js 版本、所选协议、脱敏后的错误代码和复现步骤,不要公开 API Key。

致谢

聊天内附件和专用结果卡的部分实现思路源自 MIT 许可的 dsh-multimodal,详见 [THIRD_PARTY_NOTICES.md](./THIRD_PARTY_NOTICES.md)。

许可证

本项目采用 [MIT License](./LICENSE),与仓库中的 LICENSE 文件一致。