stickerwu-imagegen:在 DeepSeek Harness 中调用 OpenAI 兼容图片 API

前言

在 DeepSeek Harness(DSH)里做智能体时,常见需求是一次生图、按提示改图,或在原图上圈选标注后再提交编辑。若每次都手写 HTTP 调 generations / edits,还要自己管附件路径和多次迭代,成本和出错点都会上去。stickerwu-imagegen 把上述能力做成 DSH 原生 bundle,并提供与 Codex、Claude Code 共用的 CLI 与本地无限画布,便于在 Harness 工具调用与手工标注之间切换。

下面介绍该插件在 DSH 下的定位、能力与安装用法;事实以仓库 README 与 v1.6.1 包元数据为准。

这是什么

stickerwu-imagegen(npm 包名 dsh-stickerwu-imagegen)由维护者 stickerwu 发布,面向 Codex、Claude Code 和 DeepSeek Harness 三端。核心能力是:通过可配置的 OpenAI-compatible 图片 API,完成生图、参考图编辑,以及带透明标注层的改图;需要连续圈画、文字标注或多轮比较时,可打开本地无限画布。约定是:用户每次明确提交只发起一次图片请求。

项目为独立实现,非 OpenAI、Anthropic 或 DeepSeek 官方出品。许可证为 MIT(见 package.json)。

核心功能

Harness 原生工具

安装后,DSH 侧提供四个只读或写操作分明的工具:

工具名 用途
stickerwu_imagegen_generate 一次明确调用发起一次生图请求
stickerwu_imagegen_edit 本地图片路径或 Harness 图片附件改图,可加 mask 或透明 markup
stickerwu_imagegen_canvas 按需打开无限画布;支持上传、圈画、文字与用户提交后的迭代
stickerwu_imagegen_status 查看连接与模型,不回传密钥、不调用图片 API

生图默认走 JSON 的 generations 端点;改图走 multipart 的 edits 端点,上传图片文件,不会把改图降级为 generations。默认 size=auto,由服务端决定尺寸,不保证精确保留原图尺寸;有要求时需显式指定 --size WIDTHxHEIGHT 并在返回后核验实际尺寸。

模型与参数

简写 实际模型
sunburst(默认) gpt-image-2.6-sunburst
flare gpt-image-2.6-flare
显式 2.5 gpt-image-2.5-sunburst 或 gpt-image-2.5-flare

显式指定 2.5 时不会静默升到 2.6。质量、复杂度、分辨率、输出格式、压缩和流式预览可按请求独立设置。GIF、透明背景、mask、流式预览等是否可用取决于服务商权限与中转实现;README 记录了部分线上验收结果与限制,不能据此承诺所有渠道行为一致。

本地画布与 CLI

多轮圈画、箭头、文字、参考图比较等场景,使用 annotate.mjs 本地无限画布。画布支持导入图片、撤销重做;点击「按标注修改」后,插件将原图与独立透明 PNG 标注层发往编辑端点。单次生图或改图也可通过共享的 generate.mjs 完成(与三端技能共用脚本树)。

安装与启用

运行要求

  • Node.js 22+;普通 CLI 与画布无第三方运行时依赖。
  • DeepSeek Harness >=0.2.2-rc.1 <0.3.0;使用宿主自带 SDK,不安装第二份 Harness SDK。
  • API 需兼容图片 generations / edits;地址、密钥可在画布 API 设置 中配置,或使用环境变量。

插件以当前 DSH 进程权限运行;安装前建议在 GitHub 查看源码与许可证,并自行评估将图片 API 密钥保存在本机配置中的风险(README 说明保存位置为本地明文,POSIX 下权限 0600)。

DeepSeek Harness 安装

在 Harness CLI 可用的终端中,安装到实际使用的 profile(桌面默认 desktop):

dsh plugin --profile desktop add github:stickerwu/stickerwu-imagegen#v1.6.1

Gitee 镜像:

dsh plugin --profile desktop add git+https://gitee.com/stickerwu/stickerwu-imagegen.git#v1.6.1

也可在源码目录构建并安装经校验的离线包:

npm run build
npm run pack:verify
dsh plugin --profile desktop add <打印出的-dsh-stickerwu-imagegen-1.6.1.tgz-绝对路径>

安装后重新加载该 profile 或重启 Harness。移除插件:

dsh plugin --profile desktop remove dsh-stickerwu-imagegen

当前 README 未声称已通过官方插件市场审核;社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。

API 与 Harness 插件配置

环境变量(新名称优先,旧名 VVVCODE_* 仍可用):

  • STICKERWU_IMAGEGEN_API_KEY
  • STICKERWU_IMAGEGEN_BASE_URL

画布内可新建连接、保存并使用,切换连接不会自动发起生图。用户级配置文件路径:~/.config/vvvcode-image-gen/config.json。

Harness 插件侧使用 Schemastery,可选字段包括:configPath、profile、outputDir(默认 ~/Pictures/stickerwu-imagegen)、timeoutMs、canvasIdleMs。初次可在工具返回中打开画布,在 API 设置 本地填写地址与密钥;打开画布、读状态、切换连接均不产生图片请求。

典型用法

在对话中调用工具

示例表述(摘自 README):

用 stickerwu_imagegen_generate,model 设为 gpt-image-2.5-flare,画一只小猫。

也可直接描述「生成一只小猫」或「把这张图里的帽子改成绿色」。原生工具返回原始图片文件路径及真实尺寸;栅格图另存为 Harness 持久附件供预览。SVG 返回文件路径,不冒充栅格附件。

命令行与画布

查看或设置 CLI 连接(节选):

node plugins/vvvcode-image-gen/scripts/generate.mjs --get-config
node plugins/vvvcode-image-gen/scripts/generate.mjs --set-config --model flare
node plugins/vvvcode-image-gen/scripts/generate.mjs --use-profile work

需要手工标注时:

node plugins/vvvcode-image-gen/scripts/annotate.mjs --image result.png --open

--profile NAME 在生图与画布 CLI 中可选择已保存连接;显式 profile 时不读环境中的地址/密钥。

适用场景与注意

适合谁: 已在 DSH 中开发智能体、且手头有 OpenAI-compatible 图片 API(含 2.5 / 2.6 模型)的开发者;需要一次工具调用生图/改图,或偶尔打开画布做标注迭代。

需注意:

  1. 不要把 DeepSeek 聊天模型密钥当作图片 API 密钥;二者在插件中分离配置。
  2. 改图输出尺寸、格式、GIF/SSE 中间预览等,README 兼容性章节记录了真实请求结果与部分 HTTP 400/格式不符案例,部署前应在自己渠道上做验收。
  3. 流式预览、取消:前台请求支持 Harness 取消,下载与 SSE 会随之停止;已打开的画布在工具返回后仍可继续运行,直至用户 Finish、闲置超时或卸载插件。

更细的三端配置与排错见仓库 docs/usage.md;市场收录说明见 docs/marketplaces.md。

结尾

stickerwu-imagegen 把生图、改图与标注画布接到 DSH 原生工具契约上,并约束「单次明确提交对应单次 API 请求」,便于在智能体流程里控制成本与行为。查阅插件介绍与安装说明可访问社区目录页与 GitHub 仓库。

  • 目录页:https://www.skillhub.cn/plugins/stickerwu/stickerwu-imagegen
  • GitHub:https://github.com/stickerwu/stickerwu-imagegen
羽毛球分组比赛记分
小程序二维码

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

小夜