@yanickxia/agent-vision 0.2.0 → 0.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 +137 -11
- package/dist/cli.js +51 -2
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +7 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +79 -14
- package/dist/config.js.map +1 -1
- package/dist/generate.d.ts +16 -0
- package/dist/generate.d.ts.map +1 -0
- package/dist/generate.js +167 -0
- package/dist/generate.js.map +1 -0
- package/dist/generation-provider.d.ts +24 -0
- package/dist/generation-provider.d.ts.map +1 -0
- package/dist/generation-provider.js +101 -0
- package/dist/generation-provider.js.map +1 -0
- package/dist/image.d.ts +1 -0
- package/dist/image.d.ts.map +1 -1
- package/dist/image.js +1 -1
- package/dist/image.js.map +1 -1
- package/dist/server.d.ts +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +36 -1
- package/dist/server.js.map +1 -1
- package/package.json +3 -2
- package/skills/agent-vision/SKILL.md +51 -8
- package/skills/agent-vision/references/configuration.md +107 -5
package/README.md
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
# agent-vision
|
|
2
2
|
|
|
3
3
|
一个小而直接的视觉 MCP Server + Agent Skill:让纯文本 Agent 通过一个
|
|
4
|
-
OpenAI-compatible
|
|
4
|
+
OpenAI-compatible 视觉模型理解图片和视频,也能通过生图模型从文字生成图片。
|
|
5
5
|
|
|
6
6
|
- 纯 Node.js / TypeScript,`npx` 自动下载运行
|
|
7
|
-
- MCP 工具:`analyze_image`、`analyze_video`
|
|
7
|
+
- MCP 工具:`analyze_image`、`analyze_video`、`generate_image`
|
|
8
8
|
- Agent Skills 标准目录:`skills/agent-vision/`,能力自适应:能看图的 Agent 直接看,纯文本 Agent 直接跑 CLI
|
|
9
9
|
- 图片:本地路径、HTTP(S) URL、Data URI
|
|
10
10
|
- 视频:本地路径或 URL,自动下载 npm 内的 ffmpeg 并均匀抽帧
|
|
11
|
-
-
|
|
11
|
+
- 识图多 provider 多模型并发竞速:所有 target 同时请求,谁先成功用谁,其余请求 abort
|
|
12
|
+
- 生图:支持 OpenAI-compatible 和火山方舟 Seedream,独立配置 provider / model,按顺序失败回退
|
|
12
13
|
|
|
13
14
|
## 为什么做这个项目
|
|
14
15
|
|
|
@@ -19,13 +20,17 @@ OpenAI-compatible 视觉模型理解图片和视频。
|
|
|
19
20
|
- [vision-tool](https://github.com/farhanic017/vision-tool):支持视频抽帧,但包含大量 provider 探测、并行 fallback 和安装逻辑,并采用 GPL-3.0。
|
|
20
21
|
- [agent-vision-toolkit](https://github.com/Anionex/agent-vision-toolkit):Skill 和任务工作流很强,但核心是多组 Python/Shell CLI,不是 MCP 视频服务。
|
|
21
22
|
|
|
22
|
-
`agent-vision`
|
|
23
|
+
`agent-vision` 保持两条简单链路:
|
|
24
|
+
|
|
25
|
+
- 理解:**MCP/CLI → 图片或视频帧 → 你配置的视觉 API → 文本**
|
|
26
|
+
- 生成:**MCP/CLI → 文字描述 → 你配置的生图 API → 图片**
|
|
23
27
|
本仓库是独立实现,没有复制 `vision-tool` 的 GPL 源码。
|
|
24
28
|
|
|
25
29
|
## 要求
|
|
26
30
|
|
|
27
31
|
- Node.js 20+
|
|
28
|
-
-
|
|
32
|
+
- 图片/视频理解:支持 `/chat/completions` 和 `image_url` 的 OpenAI-compatible 视觉模型
|
|
33
|
+
- 生图:OpenAI-compatible 生图模型,或火山方舟 Seedream(API Key 鉴权);理解和生图可以单独配置
|
|
29
34
|
|
|
30
35
|
ffmpeg 由 `@ffmpeg-installer/ffmpeg` 按平台自动安装,无需另行安装。
|
|
31
36
|
|
|
@@ -57,7 +62,7 @@ chmod 600 ~/.config/agent-vision/settings.json
|
|
|
57
62
|
```
|
|
58
63
|
|
|
59
64
|
- 位置:`$AGENT_VISION_CONFIG` 显式路径,或 `$XDG_CONFIG_HOME/agent-vision/settings.json`(默认 `~/.config/agent-vision/settings.json`)
|
|
60
|
-
-
|
|
65
|
+
- `providers` 用于图片/视频理解,每个 provider × model 是一个 target;多个 target 时**并发请求,第一个成功者胜出**,其余请求 abort。注意成本:N 个 target 意味着每次分析最多 N 份上传与推理费用
|
|
61
66
|
- provider 字段:`baseUrl`(必填)、`models`(必填非空)、`name`/`apiKey`/`headers`(可选;`apiKey` 缺省回退环境变量)
|
|
62
67
|
- 顶层可选:`maxTokens`、`timeoutMs`、`headers`、`maxImageMb`、`maxVideoMb`、`allowPrivateUrls`、`ffmpegPath`
|
|
63
68
|
- 文件定义的字段优先于环境变量;含 key 的文件建议 `chmod 600`
|
|
@@ -70,16 +75,99 @@ chmod 600 ~/.config/agent-vision/settings.json
|
|
|
70
75
|
| `AGENT_VISION_BASE_URL` | `VISION_BASE_URL` → `OPENAI_BASE_URL` |
|
|
71
76
|
| `AGENT_VISION_MODEL` | `VISION_MODEL` → `OPENAI_MODEL` |
|
|
72
77
|
|
|
73
|
-
|
|
78
|
+
### 生图配置
|
|
79
|
+
|
|
80
|
+
在同一个 `settings.json` 中添加 `generationProviders`,字段与识图的 `providers`
|
|
81
|
+
类似,额外通过 `type` 选择生图协议;也可以只配置生图,不配置识图:
|
|
82
|
+
|
|
83
|
+
```json
|
|
84
|
+
{
|
|
85
|
+
"generationProviders": [
|
|
86
|
+
{
|
|
87
|
+
"name": "image-api",
|
|
88
|
+
"type": "openai-images",
|
|
89
|
+
"baseUrl": "https://your-image-api.example/v1",
|
|
90
|
+
"apiKey": "sk-...",
|
|
91
|
+
"models": ["your-image-generation-model"]
|
|
92
|
+
}
|
|
93
|
+
]
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
- 识图与生图模型完全分开,不会把视觉聊天模型自动当作生图模型。
|
|
98
|
+
- `type` 支持 `openai-images`(默认,兼容旧配置)和 `volcengine-ark`。按显式协议适配请求,不根据域名或模型名称猜测;未知类型会报配置错误。
|
|
99
|
+
- `generationProviders` 内按 provider、model 的配置顺序依次尝试,拿到第一张有效图片就停止,**不并发竞速**。失败回退仍可能产生多次费用(例如上游超时但实际已完成生成);只想调用一个模型时配置一个 target。
|
|
100
|
+
- 每次只生成一张图片;目前支持文生图,不包含参考图编辑或异步任务轮询。
|
|
101
|
+
- 两种协议均支持 `data[0].b64_json` 或 `data[0].url` 返回。`openai-images` 省略 `response_format`,避免不支持该参数的模型报错;`volcengine-ark` 请求 base64 返回。参考 [OpenAI 官方 Images API 文档](https://developers.openai.com/api/reference/resources/images/methods/generate)。
|
|
102
|
+
- 与识图共用顶层 `timeoutMs`、`maxImageMb`、`headers`、`allowPrivateUrls`,生图较慢时可调高 `timeoutMs`。
|
|
103
|
+
- `doctor` 会分别列出识图和生图 targets,并显示生图协议,只配置生图时不要求 ffmpeg。
|
|
104
|
+
|
|
105
|
+
#### 火山引擎方舟(Seedream)
|
|
106
|
+
|
|
107
|
+
在已有配置中加入下面的生图部分即可,保留原来的 `providers`:
|
|
108
|
+
|
|
109
|
+
```json
|
|
110
|
+
{
|
|
111
|
+
"generationProviders": [
|
|
112
|
+
{
|
|
113
|
+
"name": "volcengine",
|
|
114
|
+
"type": "volcengine-ark",
|
|
115
|
+
"baseUrl": "https://ark.cn-beijing.volces.com/api/v3",
|
|
116
|
+
"apiKey": "你的方舟 API Key",
|
|
117
|
+
"models": ["doubao-seedream-5-0-lite-260128"]
|
|
118
|
+
}
|
|
119
|
+
]
|
|
120
|
+
}
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
`models` 填写你已开通的 Seedream Model ID,也支持配置了生图模型的 `ep-...` 接入点 ID。
|
|
124
|
+
`apiKey` 可省略并从 `ARK_API_KEY` 读取;若设置了 `AGENT_VISION_GENERATION_API_KEY`,则后者优先。
|
|
125
|
+
方舟不会自动继承识图的 `AGENT_VISION_API_KEY` / `OPENAI_API_KEY`,避免把其他服务的 key 发给火山。
|
|
126
|
+
|
|
127
|
+
```bash
|
|
128
|
+
npx -y @yanickxia/agent-vision generate \
|
|
129
|
+
--prompt "一只坐在窗边的橘猫,水彩风格" --output ./cat.jpg --size 2K
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
- 使用方舟原生 `/api/v3/images/generations` 参数,不发送 OpenAI 的 `n` 或 `quality`;传 `--quality` 会在调用前报错,不静默忽略。
|
|
133
|
+
- `--size` 可用模型支持的分辨率档位(例如 `2K`)或 `宽x高`,省略时采用模型默认值。
|
|
134
|
+
- 保持服务端的单图、非流式默认行为,不发送部分 Seedream 模型不支持的组图/流式开关。
|
|
135
|
+
- 保留模型默认水印和输出格式;Seedream 通常返回 JPEG,文件扩展名不会触发转码。
|
|
136
|
+
- 能解析火山的 HTTP 错误及成功 HTTP 响应中的顶层/单图错误,保留错误码与消息。
|
|
137
|
+
|
|
138
|
+
协议依据:[方舟官方图片生成 API](https://ark.volcengine.com/region:cn-beijing/docs/image-generation-api.md)。
|
|
139
|
+
本适配针对**方舟 Seedream 文生图**,不是“视觉智能/即梦”的 AK/SK 签名接口,不包含图生图、组图或图层拆分。
|
|
140
|
+
|
|
141
|
+
#### 生图环境变量
|
|
142
|
+
|
|
143
|
+
也可以用环境变量配置生图:
|
|
144
|
+
|
|
145
|
+
| 变量 | 回退 / 说明 |
|
|
146
|
+
|---|---|
|
|
147
|
+
| `AGENT_VISION_GENERATION_TYPE` | 默认 `openai-images`;火山方舟设为 `volcengine-ark` |
|
|
148
|
+
| `AGENT_VISION_GENERATION_MODEL` | 生图模型名称,必须显式设置;不回退到识图模型 |
|
|
149
|
+
| `AGENT_VISION_GENERATION_BASE_URL` | OpenAI 协议回退到识图 URL 及其别名;方舟协议默认 `https://ark.cn-beijing.volces.com/api/v3`,不继承识图 URL |
|
|
150
|
+
| `AGENT_VISION_GENERATION_API_KEY` | OpenAI 协议回退到识图 key 及其别名;方舟协议回退到 `ARK_API_KEY` |
|
|
151
|
+
| `ARK_API_KEY` | 仅用于 `volcengine-ark` 的 key 回退 |
|
|
152
|
+
| `AGENT_VISION_GENERATION_HEADERS` | 生图专用额外请求头 JSON,覆盖通用环境变量请求头 |
|
|
153
|
+
|
|
154
|
+
文件中 `generationProviders` 优先于环境变量生图 target;provider 的 `apiKey`
|
|
155
|
+
省略时使用上述生图 key 回退,显式 `"apiKey": ""` 可关闭 key 回退。
|
|
156
|
+
文件内未指定 `type` 的 provider 始终是 `openai-images`,不受环境变量的 `TYPE` 影响。
|
|
157
|
+
请求头优先级:通用环境变量 → 生图环境变量 → 文件顶层 → provider。
|
|
158
|
+
|
|
159
|
+
### 通用选项
|
|
160
|
+
|
|
161
|
+
以下可选变量与对应的配置文件字段等价:
|
|
74
162
|
|
|
75
163
|
| 变量 | 默认值 | 说明 |
|
|
76
164
|
|---|---:|---|
|
|
77
165
|
| `AGENT_VISION_MAX_TOKENS` | `4096` | 最大输出 tokens |
|
|
78
166
|
| `AGENT_VISION_TIMEOUT_MS` | `120000` | 下载和 API 超时 |
|
|
79
|
-
| `AGENT_VISION_MAX_IMAGE_MB` | `20` |
|
|
167
|
+
| `AGENT_VISION_MAX_IMAGE_MB` | `20` | 输入和生成图片的大小上限 |
|
|
80
168
|
| `AGENT_VISION_MAX_VIDEO_MB` | `200` | 视频大小上限 |
|
|
81
169
|
| `AGENT_VISION_HEADERS` | `{}` | 额外请求头 JSON |
|
|
82
|
-
| `AGENT_VISION_ALLOW_PRIVATE_URLS` | `false` |
|
|
170
|
+
| `AGENT_VISION_ALLOW_PRIVATE_URLS` | `false` | 允许私网图片/视频来源及生图结果 URL |
|
|
83
171
|
| `AGENT_VISION_FFMPEG_PATH` | 自动发现 | 指定 ffmpeg 可执行文件;默认先用 PATH,再用 npm 内置版本 |
|
|
84
172
|
|
|
85
173
|
## MCP 安装
|
|
@@ -138,7 +226,20 @@ npx skills add yanickxia/agent-vision --skill agent-vision -g -y
|
|
|
138
226
|
|
|
139
227
|
也可以复制 `skills/agent-vision/` 到 Agent 的 skills 目录。Skill 是能力自适应
|
|
140
228
|
的:Agent 自己能看图就直接看;看不了(或输入是视频)就由 Skill 指导 Agent
|
|
141
|
-
直接跑 CLI
|
|
229
|
+
直接跑 CLI 完成分析。生图不受「能否看图」限制,任何 Agent 都可以使用。
|
|
230
|
+
|
|
231
|
+
**MCP 和 Skill/CLI 都支持火山方舟生图**,共用同一份 `settings.json` 中的
|
|
232
|
+
`generationProviders` 配置。Skill 直接执行 CLI,不依赖启动或安装 MCP Server。
|
|
233
|
+
|
|
234
|
+
| 入口 | 调用 | 输出 |
|
|
235
|
+
|---|---|---|
|
|
236
|
+
| MCP | `generate_image`,传 `prompt`、可选 `size` / `output_path` | 图片内容和元数据,可选保存文件 |
|
|
237
|
+
| Skill / CLI | `agent-vision generate --prompt ... --output ...` | 保存文件,stdout 返回绝对路径 |
|
|
238
|
+
|
|
239
|
+
从源码使用尚未发布的功能时,先在仓库中运行 `npm run build`,然后用
|
|
240
|
+
`node /绝对路径/agent-vision/dist/cli.js generate ...` 运行 CLI。
|
|
241
|
+
本地 MCP 配置也可使用 `command: "node"`、`args: ["/绝对路径/agent-vision/dist/cli.js"]`,
|
|
242
|
+
不要加 `generate` 参数,无子命令时即启动 MCP stdio 服务。
|
|
142
243
|
|
|
143
244
|
## CLI
|
|
144
245
|
|
|
@@ -149,9 +250,18 @@ npx -y @yanickxia/agent-vision image ./screenshot.png \
|
|
|
149
250
|
npx -y @yanickxia/agent-vision video ./demo.mp4 \
|
|
150
251
|
--prompt "按时间顺序总结 UI 操作" --frames 8
|
|
151
252
|
|
|
253
|
+
npx -y @yanickxia/agent-vision generate \
|
|
254
|
+
--prompt "一只坐在窗边的橘猫,水彩风格" --output ./cat.png --size 1024x1024
|
|
255
|
+
|
|
152
256
|
npx -y @yanickxia/agent-vision doctor
|
|
153
257
|
```
|
|
154
258
|
|
|
259
|
+
`generate` 必须提供 `--prompt`(或一个带引号的位置参数)和 `--output`。
|
|
260
|
+
可选 `--size` 原样传给生图 API;`--quality` 仅用于 OpenAI-compatible 协议。
|
|
261
|
+
省略时采用 provider 默认值,支持值取决于模型。
|
|
262
|
+
输出文件的父目录必须存在,已有文件不会被覆盖;成功时 stdout 输出保存的绝对路径。
|
|
263
|
+
图片保留 API 返回的实际格式,不会因输出文件的扩展名而转码。
|
|
264
|
+
|
|
155
265
|
## MCP 工具
|
|
156
266
|
|
|
157
267
|
### `analyze_image`
|
|
@@ -179,12 +289,28 @@ npx -y @yanickxia/agent-vision doctor
|
|
|
179
289
|
`max_frames` 范围 1–16,默认 8。实现会均匀抽取 JPEG 帧,并带时间点一起发给
|
|
180
290
|
模型。它不是逐帧转写,快速变化可能被漏掉。
|
|
181
291
|
|
|
292
|
+
### `generate_image`
|
|
293
|
+
|
|
294
|
+
```json
|
|
295
|
+
{
|
|
296
|
+
"prompt": "一只坐在窗边的橘猫,水彩风格",
|
|
297
|
+
"output_path": "/absolute/path/to/cat.png",
|
|
298
|
+
"size": "1024x1024"
|
|
299
|
+
}
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
只有 `prompt` 必填。`output_path` 可选,不传时仅返回 MCP 图片内容,不写本地文件。
|
|
303
|
+
`size`、`quality` 可选。返回一个 text 内容块(JSON 元数据:模型、MIME 类型、字节数、
|
|
304
|
+
可选输出路径和上游改写的 prompt)以及一个 image 内容块。路径是 MCP Server 所在机器上的路径。
|
|
305
|
+
|
|
182
306
|
## 隐私与安全
|
|
183
307
|
|
|
184
308
|
- 图片会发送到你配置的视觉 API。
|
|
309
|
+
- 生图 prompt 会发送到你配置的生图 API;如果上游返回图片 URL,会下载该图片,但不会向图片下载地址转发生图 API key 或自定义请求头。
|
|
185
310
|
- 视频不会整体发给模型;远程视频先下载到本地临时目录,然后只发送抽出的 JPEG 帧。
|
|
186
311
|
- 临时目录在成功或失败后都会删除。
|
|
187
|
-
- 用户提供的远程图片/视频 URL 默认拒绝 localhost、私网、链路本地和云元数据地址。
|
|
312
|
+
- 用户提供的远程图片/视频 URL 和上游返回的生图 URL 默认拒绝 localhost、私网、链路本地和云元数据地址。
|
|
313
|
+
- 生图失败会删除本次预留的输出文件;成功的生图文件会保留,不会作为临时文件清理。
|
|
188
314
|
- stdio 模式不向 stdout 写日志,避免破坏 MCP 协议。
|
|
189
315
|
|
|
190
316
|
## 开发
|
package/dist/cli.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { parseArgs } from "node:util";
|
|
2
3
|
import { analyzeImage, analyzeVideo } from "./analyze.js";
|
|
3
4
|
import { loadConfig } from "./config.js";
|
|
4
5
|
import { errorMessage } from "./errors.js";
|
|
6
|
+
import { generateImage } from "./generate.js";
|
|
5
7
|
import { SERVER_VERSION, startStdioServer } from "./server.js";
|
|
6
8
|
import { ensureFfmpeg } from "./video.js";
|
|
7
9
|
const HELP = `agent-vision ${SERVER_VERSION}
|
|
@@ -10,11 +12,15 @@ Usage:
|
|
|
10
12
|
agent-vision Start the MCP stdio server
|
|
11
13
|
agent-vision image <source> [options]
|
|
12
14
|
agent-vision video <source> [options]
|
|
15
|
+
agent-vision generate --prompt <text> --output <path> [options]
|
|
13
16
|
agent-vision doctor
|
|
14
17
|
|
|
15
18
|
Options:
|
|
16
|
-
-p, --prompt <text>
|
|
19
|
+
-p, --prompt <text> Analysis question or image generation prompt
|
|
17
20
|
--frames <1-16> Video frames to sample (default: 8)
|
|
21
|
+
-o, --output <path> Save generated image (must not exist)
|
|
22
|
+
--size <value> Generation size, e.g. 1024x1024 or Ark 2K
|
|
23
|
+
--quality <value> OpenAI-compatible quality (not supported by Ark)
|
|
18
24
|
-h, --help Show help
|
|
19
25
|
-v, --version Show version
|
|
20
26
|
`;
|
|
@@ -61,12 +67,55 @@ async function runCli(args) {
|
|
|
61
67
|
lines.push(` ${index + 1}. ${target.label} ${target.baseUrl} key: ${target.apiKey ? "configured" : "not configured"}`);
|
|
62
68
|
});
|
|
63
69
|
}
|
|
70
|
+
if (config.generationTargets.length === 0) {
|
|
71
|
+
lines.push("generation targets: none configured (optional)");
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
lines.push("generation targets (sequential fallback):");
|
|
75
|
+
config.generationTargets.forEach((target, index) => {
|
|
76
|
+
lines.push(` ${index + 1}. ${target.label} ${target.baseUrl} key: ${target.apiKey ? "configured" : "not configured"} type: ${target.type ?? "openai-images"}`);
|
|
77
|
+
});
|
|
78
|
+
}
|
|
64
79
|
lines.push(`ffmpeg: ${ffmpeg}`);
|
|
65
80
|
process.stdout.write(`${lines.join("\n")}\n`);
|
|
66
|
-
if (config.targets.length === 0
|
|
81
|
+
if ((config.targets.length === 0 && config.generationTargets.length === 0) ||
|
|
82
|
+
(config.targets.length > 0 && ffmpeg === "unavailable"))
|
|
67
83
|
process.exitCode = 1;
|
|
68
84
|
return;
|
|
69
85
|
}
|
|
86
|
+
if (command === "generate") {
|
|
87
|
+
const { values, positionals } = parseArgs({
|
|
88
|
+
args: args.slice(1),
|
|
89
|
+
allowPositionals: true,
|
|
90
|
+
options: {
|
|
91
|
+
prompt: { type: "string", short: "p" },
|
|
92
|
+
output: { type: "string", short: "o" },
|
|
93
|
+
size: { type: "string" },
|
|
94
|
+
quality: { type: "string" },
|
|
95
|
+
help: { type: "boolean", short: "h" },
|
|
96
|
+
},
|
|
97
|
+
});
|
|
98
|
+
if (values.help) {
|
|
99
|
+
process.stdout.write(HELP);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
if (positionals.length > 1 || (positionals.length > 0 && values.prompt !== undefined)) {
|
|
103
|
+
throw new Error("generate accepts one prompt, either positional or via --prompt");
|
|
104
|
+
}
|
|
105
|
+
const prompt = values.prompt ?? positionals[0];
|
|
106
|
+
if (!prompt?.trim())
|
|
107
|
+
throw new Error("generate requires --prompt <text>");
|
|
108
|
+
if (!values.output?.trim())
|
|
109
|
+
throw new Error("generate requires --output <path>");
|
|
110
|
+
const result = await generateImage({
|
|
111
|
+
prompt,
|
|
112
|
+
outputPath: values.output,
|
|
113
|
+
...(values.size !== undefined ? { size: values.size } : {}),
|
|
114
|
+
...(values.quality !== undefined ? { quality: values.quality } : {}),
|
|
115
|
+
});
|
|
116
|
+
process.stdout.write(`${result.outputPath}\n`);
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
70
119
|
if (command !== "image" && command !== "video") {
|
|
71
120
|
throw new Error(`Unknown command: ${command}\n\n${HELP}`);
|
|
72
121
|
}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,IAAI,GAAG,gBAAgB,cAAc
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -5,8 +5,14 @@ export interface ModelTarget {
|
|
|
5
5
|
apiKey?: string;
|
|
6
6
|
headers: Record<string, string>;
|
|
7
7
|
}
|
|
8
|
+
export type GenerationProviderType = "openai-images" | "volcengine-ark";
|
|
9
|
+
export interface GenerationTarget extends ModelTarget {
|
|
10
|
+
type?: GenerationProviderType;
|
|
11
|
+
}
|
|
12
|
+
export declare const VOLCENGINE_ARK_BASE_URL = "https://ark.cn-beijing.volces.com/api/v3";
|
|
8
13
|
export interface VisionConfig {
|
|
9
14
|
targets: ModelTarget[];
|
|
15
|
+
generationTargets: GenerationTarget[];
|
|
10
16
|
configFile?: string;
|
|
11
17
|
maxTokens: number;
|
|
12
18
|
timeoutMs: number;
|
|
@@ -20,5 +26,6 @@ type Environment = Record<string, string | undefined>;
|
|
|
20
26
|
export type SettingsReader = (filePath: string) => string | undefined;
|
|
21
27
|
export declare function loadConfig(env?: Environment, readSettings?: SettingsReader): VisionConfig;
|
|
22
28
|
export declare function chatCompletionsUrl(baseUrl: string): string;
|
|
29
|
+
export declare function imageGenerationsUrl(baseUrl: string): string;
|
|
23
30
|
export {};
|
|
24
31
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,MAAM,sBAAsB,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAExE,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IAEnD,IAAI,CAAC,EAAE,sBAAsB,CAAC;CAC/B;AAED,eAAO,MAAM,uBAAuB,6CAA6C,CAAC;AAElF,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA0BD,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAEtD,MAAM,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;AAmOtE,wBAAgB,UAAU,CACxB,GAAG,GAAE,WAAyB,EAC9B,YAAY,GAAE,cAAsC,GACnD,YAAY,CAsId;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE3D"}
|
package/dist/config.js
CHANGED
|
@@ -2,6 +2,7 @@ import { readFileSync } from "node:fs";
|
|
|
2
2
|
import { homedir } from "node:os";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { VisionError } from "./errors.js";
|
|
5
|
+
export const VOLCENGINE_ARK_BASE_URL = "https://ark.cn-beijing.volces.com/api/v3";
|
|
5
6
|
function firstNonEmpty(env, names) {
|
|
6
7
|
for (const name of names) {
|
|
7
8
|
const value = env[name]?.trim();
|
|
@@ -33,17 +34,17 @@ function stringRecord(value, where) {
|
|
|
33
34
|
}
|
|
34
35
|
return headers;
|
|
35
36
|
}
|
|
36
|
-
function parseHeaders(raw) {
|
|
37
|
+
function parseHeaders(raw, name = "AGENT_VISION_HEADERS") {
|
|
37
38
|
if (!raw?.trim())
|
|
38
39
|
return {};
|
|
39
40
|
try {
|
|
40
|
-
return stringRecord(JSON.parse(raw),
|
|
41
|
+
return stringRecord(JSON.parse(raw), name);
|
|
41
42
|
}
|
|
42
43
|
catch (error) {
|
|
43
44
|
if (error instanceof VisionError)
|
|
44
45
|
throw error;
|
|
45
46
|
const detail = error instanceof Error ? error.message : String(error);
|
|
46
|
-
throw new VisionError("CONFIG_ERROR",
|
|
47
|
+
throw new VisionError("CONFIG_ERROR", `${name} must be a JSON object of string values: ${detail}`);
|
|
47
48
|
}
|
|
48
49
|
}
|
|
49
50
|
function expandConfigPath(raw) {
|
|
@@ -124,6 +125,18 @@ function parseProvider(entry, filePath) {
|
|
|
124
125
|
...(headers !== undefined ? { headers } : {}),
|
|
125
126
|
};
|
|
126
127
|
}
|
|
128
|
+
function generationProviderType(value, where) {
|
|
129
|
+
if (value === undefined)
|
|
130
|
+
return "openai-images";
|
|
131
|
+
if (value === "openai-images" || value === "volcengine-ark")
|
|
132
|
+
return value;
|
|
133
|
+
throw new VisionError("CONFIG_ERROR", `${where} must be openai-images or volcengine-ark`);
|
|
134
|
+
}
|
|
135
|
+
function parseGenerationProvider(entry, filePath) {
|
|
136
|
+
const provider = parseProvider(entry, filePath);
|
|
137
|
+
const type = generationProviderType(entry.type, `${filePath}: provider type`);
|
|
138
|
+
return { ...provider, type };
|
|
139
|
+
}
|
|
127
140
|
function parseSettings(raw, filePath) {
|
|
128
141
|
let parsed;
|
|
129
142
|
try {
|
|
@@ -137,13 +150,17 @@ function parseSettings(raw, filePath) {
|
|
|
137
150
|
throw new VisionError("CONFIG_ERROR", `${filePath} must contain a JSON object`);
|
|
138
151
|
}
|
|
139
152
|
const file = parsed;
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
if (
|
|
143
|
-
|
|
153
|
+
function providersFor(key, parse) {
|
|
154
|
+
const entries = file[key];
|
|
155
|
+
if (entries === undefined)
|
|
156
|
+
return undefined;
|
|
157
|
+
if (!Array.isArray(entries) || entries.length === 0) {
|
|
158
|
+
throw new VisionError("CONFIG_ERROR", `${filePath}: ${key} must be a non-empty array`);
|
|
144
159
|
}
|
|
145
|
-
|
|
160
|
+
return entries.map((entry) => parse(entry, `${filePath}: ${key}`));
|
|
146
161
|
}
|
|
162
|
+
const providers = providersFor("providers", parseProvider);
|
|
163
|
+
const generationProviders = providersFor("generationProviders", parseGenerationProvider);
|
|
147
164
|
const allowPrivateUrls = file.allowPrivateUrls;
|
|
148
165
|
if (allowPrivateUrls !== undefined && typeof allowPrivateUrls !== "boolean") {
|
|
149
166
|
throw new VisionError("CONFIG_ERROR", `${filePath}: allowPrivateUrls must be a boolean`);
|
|
@@ -161,6 +178,7 @@ function parseSettings(raw, filePath) {
|
|
|
161
178
|
const maxVideoMb = positiveFileNumber(file, "maxVideoMb", filePath);
|
|
162
179
|
return {
|
|
163
180
|
...(providers !== undefined ? { providers } : {}),
|
|
181
|
+
...(generationProviders !== undefined ? { generationProviders } : {}),
|
|
164
182
|
...(maxTokens !== undefined ? { maxTokens } : {}),
|
|
165
183
|
...(timeoutMs !== undefined ? { timeoutMs } : {}),
|
|
166
184
|
...(headers !== undefined ? { headers } : {}),
|
|
@@ -202,7 +220,8 @@ export function loadConfig(env = process.env, readSettings = defaultSettingsRead
|
|
|
202
220
|
]) ?? "";
|
|
203
221
|
const maxTokens = settings?.maxTokens ?? positiveInteger(env, "AGENT_VISION_MAX_TOKENS", 4096);
|
|
204
222
|
const timeoutMs = settings?.timeoutMs ?? positiveInteger(env, "AGENT_VISION_TIMEOUT_MS", 120_000);
|
|
205
|
-
const
|
|
223
|
+
const environmentHeaders = parseHeaders(env.AGENT_VISION_HEADERS);
|
|
224
|
+
const headers = { ...environmentHeaders, ...settings?.headers };
|
|
206
225
|
const maxImageMb = settings?.maxImageMb ?? positiveInteger(env, "AGENT_VISION_MAX_IMAGE_MB", 20);
|
|
207
226
|
const maxVideoMb = settings?.maxVideoMb ?? positiveInteger(env, "AGENT_VISION_MAX_VIDEO_MB", 200);
|
|
208
227
|
const allowPrivateUrls = settings?.allowPrivateUrls ??
|
|
@@ -233,8 +252,50 @@ export function loadConfig(env = process.env, readSettings = defaultSettingsRead
|
|
|
233
252
|
}]
|
|
234
253
|
: [];
|
|
235
254
|
}
|
|
255
|
+
function generationApiKey(type) {
|
|
256
|
+
return firstNonEmpty(env, ["AGENT_VISION_GENERATION_API_KEY"]) ??
|
|
257
|
+
(type === "volcengine-ark" ? firstNonEmpty(env, ["ARK_API_KEY"]) : apiKey);
|
|
258
|
+
}
|
|
259
|
+
// Never use a vision/chat model implicitly for image generation.
|
|
260
|
+
const generationModel = firstNonEmpty(env, ["AGENT_VISION_GENERATION_MODEL"]);
|
|
261
|
+
const generationHeaders = {
|
|
262
|
+
...environmentHeaders,
|
|
263
|
+
...parseHeaders(env.AGENT_VISION_GENERATION_HEADERS, "AGENT_VISION_GENERATION_HEADERS"),
|
|
264
|
+
...settings?.headers,
|
|
265
|
+
};
|
|
266
|
+
let generationTargets = [];
|
|
267
|
+
if (settings?.generationProviders) {
|
|
268
|
+
generationTargets = settings.generationProviders.flatMap((provider) => provider.models.map((model) => {
|
|
269
|
+
const targetApiKey = provider.apiKey ?? generationApiKey(provider.type);
|
|
270
|
+
return {
|
|
271
|
+
label: `${provider.name ?? hostOf(provider.baseUrl)}/${model}`,
|
|
272
|
+
type: provider.type,
|
|
273
|
+
model,
|
|
274
|
+
baseUrl: provider.baseUrl,
|
|
275
|
+
...(targetApiKey ? { apiKey: targetApiKey } : {}),
|
|
276
|
+
headers: { ...generationHeaders, ...provider.headers },
|
|
277
|
+
};
|
|
278
|
+
}));
|
|
279
|
+
}
|
|
280
|
+
else {
|
|
281
|
+
const type = generationProviderType(firstNonEmpty(env, ["AGENT_VISION_GENERATION_TYPE"]), "AGENT_VISION_GENERATION_TYPE");
|
|
282
|
+
if (generationModel) {
|
|
283
|
+
const targetApiKey = generationApiKey(type);
|
|
284
|
+
const generationBaseUrl = firstNonEmpty(env, ["AGENT_VISION_GENERATION_BASE_URL"]) ??
|
|
285
|
+
(type === "volcengine-ark" ? VOLCENGINE_ARK_BASE_URL : baseUrl);
|
|
286
|
+
generationTargets = [{
|
|
287
|
+
label: generationModel,
|
|
288
|
+
type,
|
|
289
|
+
model: generationModel,
|
|
290
|
+
baseUrl: generationBaseUrl,
|
|
291
|
+
...(targetApiKey ? { apiKey: targetApiKey } : {}),
|
|
292
|
+
headers: generationHeaders,
|
|
293
|
+
}];
|
|
294
|
+
}
|
|
295
|
+
}
|
|
236
296
|
return {
|
|
237
297
|
targets,
|
|
298
|
+
generationTargets,
|
|
238
299
|
...(configFile ? { configFile } : {}),
|
|
239
300
|
maxTokens,
|
|
240
301
|
timeoutMs,
|
|
@@ -246,20 +307,24 @@ export function loadConfig(env = process.env, readSettings = defaultSettingsRead
|
|
|
246
307
|
};
|
|
247
308
|
}
|
|
248
309
|
export function chatCompletionsUrl(baseUrl) {
|
|
310
|
+
return endpointUrl(baseUrl, "/chat/completions", "AGENT_VISION_BASE_URL");
|
|
311
|
+
}
|
|
312
|
+
export function imageGenerationsUrl(baseUrl) {
|
|
313
|
+
return endpointUrl(baseUrl, "/images/generations", "AGENT_VISION_GENERATION_BASE_URL");
|
|
314
|
+
}
|
|
315
|
+
function endpointUrl(baseUrl, endpoint, setting) {
|
|
249
316
|
let url;
|
|
250
317
|
try {
|
|
251
318
|
url = new URL(baseUrl);
|
|
252
319
|
}
|
|
253
320
|
catch {
|
|
254
|
-
throw new VisionError("CONFIG_ERROR", `Invalid
|
|
321
|
+
throw new VisionError("CONFIG_ERROR", `Invalid ${setting}: ${baseUrl}`);
|
|
255
322
|
}
|
|
256
323
|
if (url.protocol !== "http:" && url.protocol !== "https:") {
|
|
257
|
-
throw new VisionError("CONFIG_ERROR",
|
|
324
|
+
throw new VisionError("CONFIG_ERROR", `${setting} must use http or https`);
|
|
258
325
|
}
|
|
259
326
|
const pathName = url.pathname.replace(/\/+$/, "");
|
|
260
|
-
|
|
261
|
-
url.pathname = `${pathName}/chat/completions`;
|
|
262
|
-
}
|
|
327
|
+
url.pathname = pathName.endsWith(endpoint) ? pathName : `${pathName}${endpoint}`;
|
|
263
328
|
return url.toString();
|
|
264
329
|
}
|
|
265
330
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type VisionConfig } from "./config.js";
|
|
2
|
+
import { type GenerationOptions } from "./generation-provider.js";
|
|
3
|
+
export type { GenerationOptions } from "./generation-provider.js";
|
|
4
|
+
export interface GeneratedImage {
|
|
5
|
+
data: string;
|
|
6
|
+
mimeType: string;
|
|
7
|
+
bytes: number;
|
|
8
|
+
model: string;
|
|
9
|
+
revisedPrompt?: string;
|
|
10
|
+
outputPath?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function generateImage(options: GenerationOptions & {
|
|
13
|
+
outputPath?: string;
|
|
14
|
+
config?: VisionConfig;
|
|
15
|
+
}): Promise<GeneratedImage>;
|
|
16
|
+
//# sourceMappingURL=generate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAGA,OAAO,EAAqC,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEnF,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAIrF,YAAY,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA0GD,wBAAsB,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB,GAAG,OAAO,CAAC,cAAc,CAAC,CAqD1B"}
|