dsh-image-gen:在 DSH 里用自然语言生图,过程只留动画与 Turn 尾卡片

前言

在 DSH 里接图像生成,常见做法是加一个工具,让模型调用外部 API 出图。工具行里往往会堆状态文案,模型还会在结果落地后再写一段「已生成…」的收尾,聊天流显得冗长;更麻烦的是,宿主默认会把已结束回合的过程组折叠隐藏,图片若只挂在工具视图里,刷新或回合关闭后可能看不见。

dsh-image-gen(维护者 hiocobueno653-pixel,社区分类为模型推理)把生图做成一条「少说话」的流水线:用户直接用自然语言描述画面,工具内部优化提示词并请求你配置的图像 API;生成过程中工具行只展示 GridReveal 动画,成图渲染在该轮 Turn 尾席位,不跟过程组一起被折掉。仓库不含任何服务商端点或密钥,需自行填写 baseUrl 与 model。

这是什么

dsh-image-gen 是 DeepSeek Harness 的生图插件:提供 generate_image 工具、可换服务的 HTTP 客户端,以及 Web 端的 GridReveal 加载动画与 Turn 尾图片卡片。协议上默认请求 POST {baseUrl}/v1/images/generations(OpenAI 兼容形状可切换接口类型),密钥从环境变量、$DSH_HOME/.env 或设置页读取,不随仓库分发。

核心功能

generate_image 与提示词

用户不必输入斜杠命令(插件已移除 /img 类命令)。模型调用 generate_image 时,插件在服务端自动优化提示词,README 要求模型不必再替用户润色,以减少对话里的文字输出。工具在 execute 开始时会调用 exec.concludeTurn?.(),尽量阻止模型在出图后再补一段描述性回复。

界面:GridReveal 与 Turn 尾卡片

生成中,tool.call.toolview 席位展示 rareui GridReveal 的 canvas 动画(运行期无可见文字,仍保留 aria-busy 与读屏标签)。动画框与成图共用同一套 boxStyle(aspect) 尺寸,避免从动画切换到图片时盒子跳变。

图片不画在工具行里,而是通过 conversation.chat.turnTail 席位(id image-gen)渲染在助手收尾文案下方、过程组之外;配合会话日志中的 Definition(image-gen-images),刷新或换设备后仍可重建卡片。出图后,CSS 在带守卫的前提下收掉仅含生图的工具行或过程组,但不隐藏整轮用户提问。

协议与多模型配置

cordis.patch.yml 中 baseUrl、model 故意留空,安装后必须填写。除 YAML 外,可在 DSH「设置 · 图像模型」里添加条目并切换当前模型。密钥优先级:条目内 apiKey → 条目 apiKeyEnv → 插件全局 apiKeyEnv;环境变量名默认 IMAGE_API_KEY。

尺寸档位与宽高比从用户话语中解析,默认 2K 与 1:1。

安装与启用

在 profile 的 bundle 列表中加入插件名(资料原文写法):

# ~/.dsh/profiles/<profile>/package.json 的 dsh.profile.bundles 里加一行
"dsh-image-gen"

本地开发可将插件目录链入 profile:

dsh plugin add "file:/path/to/dsh-image-gen"

然后二选一填写必填项。

方式 A,插件配置:

baseUrl: https://your-image-api.example.com    # 你的图像 API 地址
model: your-model-name                          # 该服务上的模型名

方式 B:打开「设置 · 图像模型」,点「+ 添加图像模型」填表。

package.json 标明运行环境为 Node >=22.18.0,许可证 MIT,当前版本 0.1.0。

典型用法

直接对助手说即可,例如:

画一张:一只趴在窗台的橘猫,午后阳光
只生成图片:赛博朋克雨夜街道,霓虹倒影
给我配一张产品海报图,玻璃立方体在白色影棚里,16:9

无需额外命令;插件会向配置的 API 发送 { model, prompt, size, ratio, extra_body },并处理返回的 data[].url 或 data[].b64_json。

适用场景与注意

适合已在 DSH 中开发或日常使用、并希望用自然语言触发文生图、且能自备 OpenAI 兼容或插件支持的图像 API 的用户。插件以当前 dsh 进程权限运行,安装前建议阅读仓库源码与 MIT 许可证,自行确认端点与密钥管理方式。

仓库 README 强调:不含任何服务商信息;若服务非默认请求形状,需在设置中选择「OpenAI 兼容」等接口类型。社区目录页与 GitHub 为独立信息源,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-image-gen 把生图收敛为可换后端的一条工具链:聊天里少堆字,加载用 GridReveal,成图固定在 Turn 尾以免被过程组折叠藏掉。进一步说明与演示视频见仓库 README。

  • 社区目录:https://www.skillhub.cn/plugins/hiocobueno653-pixel/dsh-image-gen
  • GitHub:https://github.com/hiocobueno653-pixel/dsh-image-gen
羽毛球分组比赛记分
小程序二维码

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

小夜