@dickpy/dsh-imagegen 1.2.3 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -11
- package/lib/client.js +2030 -903
- package/lib/client.js.map +1 -1
- package/lib/index.js +662 -117
- package/package.json +2 -2
- package/src/agent-image-tools.ts +132 -30
- package/src/client/ImageGenPanel.tsx +55 -19
- package/src/client/SettingsCard.tsx +505 -196
- package/src/client/channels-form.ts +263 -0
- package/src/client/image-toolview.tsx +19 -12
- package/src/client/locales.ts +110 -0
- package/src/client/settings-card.module.css +487 -0
- package/src/client/settings-scope.ts +56 -8
- package/src/engine.ts +44 -30
- package/src/gallery-store.ts +6 -0
- package/src/generation-runtime.ts +32 -5
- package/src/history-store.ts +6 -0
- package/src/image-format.ts +11 -0
- package/src/index.ts +153 -47
- package/src/model-catalog.ts +98 -0
- package/src/presets.ts +63 -0
- package/src/protocol.ts +78 -5
- package/src/routes.ts +192 -24
package/README.md
CHANGED
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
|
|
33
33
|
| 过去要反复做的事 | 现在的工作方式 |
|
|
34
34
|
| --- | --- |
|
|
35
|
-
| 在对话、网页生图工具和本地文件夹之间切换 | 在 DSH 对话里描述目标,Agent
|
|
35
|
+
| 在对话、网页生图工具和本地文件夹之间切换 | 在 DSH 对话里描述目标,Agent 等待任务并把图片显示在工具调用对应的左侧结果区域 |
|
|
36
36
|
| 生图耗时很长,只能盯着页面或不断询问状态 | Agent 工具调用会保持等待直到完成,结果同时保存在对话和工作台 |
|
|
37
37
|
| 第一张图不对,就重新组织全部提示词 | 直接说“换成黄色”“保留构图但改成夜景”,Agent 复用上一张图继续图生图 |
|
|
38
38
|
| 多个模型各有优缺点,难以公平比较 | 用同一提示词和参数并行生成,在并列全屏视图中挑选结果 |
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
<a id="agent-workflow"></a>
|
|
42
42
|
## Agent 对话生图与连续编辑
|
|
43
43
|
|
|
44
|
-
这是插件的核心体验。开启“允许 Agent 调用生图”后,直接在 DSH 对话中说出你想要的画面即可。Agent
|
|
44
|
+
这是插件的核心体验。开启“允许 Agent 调用生图”后,直接在 DSH 对话中说出你想要的画面即可。Agent 会从已允许的模型中选择合适项,提交任务并等待完成;真实图片会显示在工具调用对应的左侧结果区域,模型收到状态和附件引用,不会额外产生一条用户消息。
|
|
45
45
|
|
|
46
46
|
接着,你可以基于结果继续提出修改。Agent 会携带该图片的引用调用图生图,不必重新上传文件,也不必重新描述全部上下文。它适合快速探索视觉方向、反复打磨 UI 视觉稿、海报或产品素材。
|
|
47
47
|
|
|
@@ -67,9 +67,9 @@ Agent 会把上一轮图片作为参考图提交图生图任务,因此第二
|
|
|
67
67
|
|
|
68
68
|
| 工具 | 用途 |
|
|
69
69
|
| --- | --- |
|
|
70
|
-
| `generate_image` |
|
|
71
|
-
| `get_image_generation_task` |
|
|
72
|
-
| `edit_image` |
|
|
70
|
+
| `generate_image` | 提交文生图任务,默认等待完成后在左侧工具结果显示图片,并返回附件引用;传 `wait_for_completion: false` 可改为后台模式。 |
|
|
71
|
+
| `get_image_generation_task` | 查询任务;完成时在左侧工具结果显示图片,并返回下一步编辑所需的图片引用。 |
|
|
72
|
+
| `edit_image` | 以已有图片为参考提交图生图任务,默认等待完成后在左侧工具结果显示图片。 |
|
|
73
73
|
| `cancel_image_generation_task` | 取消排队中或正在执行的任务。 |
|
|
74
74
|
|
|
75
75
|
未配置 API 地址、密钥或可用生图模型时,工具会明确引导到 DSH 的“设置 → 插件 → AI 生图”,而不是静默失败。Agent 调用默认开启,也可按需关闭,仅保留侧边栏工作台。
|
|
@@ -133,19 +133,20 @@ Windows 如遇 PowerShell 脚本策略限制,请使用 `dsh.cmd`。安装后
|
|
|
133
133
|
从 [GitHub Releases](https://github.com/dickpy/dsh-imagegen/releases) 下载 tgz 后执行:
|
|
134
134
|
|
|
135
135
|
```bash
|
|
136
|
-
dsh plugin --profile web add <下载路径>/dickpy-dsh-imagegen-1.
|
|
136
|
+
dsh plugin --profile web add <下载路径>/dickpy-dsh-imagegen-1.3.0.tgz
|
|
137
137
|
```
|
|
138
138
|
|
|
139
139
|
<a id="configuration"></a>
|
|
140
140
|
## 配置模型
|
|
141
141
|
|
|
142
|
-
打开 DSH 的“设置 → 插件”,展开 **AI 生图(dsh-imagegen
|
|
142
|
+
打开 DSH 的“设置 → 插件”,展开 **AI 生图(dsh-imagegen)**,先添加一个提供方。每个提供方都有独立的 API 地址、密钥和模型目录,可同时配置多个服务。
|
|
143
143
|
|
|
144
144
|
| 配置项 | 如何使用 |
|
|
145
145
|
| --- | --- |
|
|
146
|
-
|
|
|
147
|
-
|
|
|
148
|
-
|
|
|
146
|
+
| 提供方 | 预置提供方可直接选择;也可以添加自定义渠道。 |
|
|
147
|
+
| API 地址 | OpenAI 兼容接口根地址,例如 `https://api.openai.com/v1`。插件会自动追加图像接口路径。 |
|
|
148
|
+
| API 密钥 | 每个提供方单独配置,密钥仅保存在 DSH 宿主侧,浏览器与 Agent 都不会获得明文。 |
|
|
149
|
+
| 模型目录 | 保存地址和密钥后点击“检测可用模型”;勾选实际支持生图的项目。没有 `/models` 的网关可手动添加,并可设置显示别名。 |
|
|
149
150
|
| 提示词增强模型 | 可选。点击“获取可用模型”,选择支持 `/chat/completions` 的模型;通常可复用生图 API 凭据。 |
|
|
150
151
|
| 允许 Agent 调用生图 | 默认开启。关闭后,Agent 不能提交、查询和取消任务,侧边栏工作台不受影响。 |
|
|
151
152
|
|
|
@@ -156,7 +157,7 @@ dsh plugin --profile web add <下载路径>/dickpy-dsh-imagegen-1.2.3.tgz
|
|
|
156
157
|
- **OpenAI 兼容接口**:支持 `/images/generations`、`/images/edits` 和 `{ data: [{ b64_json | url }] }` 格式响应。
|
|
157
158
|
- **Grok Imagine**:原生支持 `grok-imagine-image` 与 `grok-imagine-image-2.0`。将地址设为 `https://api.x.ai/v1` 后,图生图会使用其 JSON `image_url` 协议,比例和清晰度映射为 `aspect_ratio` 与 `resolution`。
|
|
158
159
|
- **Nano Banana(谷歌 Gemini 图像系列)**:内置 `nanobanana2` / `nanobanana2-lite` / `nanobanana-pro`(也识别官方 `gemini-3.x-image*` ID)。走 OpenAI 兼容接口时,比例和清晰度映射为 `aspect_ratio` 与 `image_size`(1K/2K/4K),输出请求 base64。
|
|
159
|
-
- **Seedream(字节跳动生图系列)**:内置 `seedream-5.0-pro`(也识别 `seedream-4.x`、`doubao-seedream-…`)。无 `/images/edits`,文生图与图生图统一走 `/images/generations`,参考图以 JSON `image`
|
|
160
|
+
- **Seedream(字节跳动生图系列)**:内置 `seedream-5.0-pro`(也识别 `seedream-4.x`、`doubao-seedream-…`)。无 `/images/edits`,文生图与图生图统一走 `/images/generations`,参考图以 JSON `image` 数组发送;官方 Ark 接口的 `size` 用于清晰度档位(1K/2K,5.0-pro 上限 2K),面板比例不会误传为 Ark 的 `size`。
|
|
160
161
|
- **后续模型**:可将 `qwen-image`、Gemini 等 OpenAI 兼容网关模型加入清单;厂商专属鉴权或请求协议需要单独适配。
|
|
161
162
|
|
|
162
163
|
<a id="community"></a>
|