amlei-web-image-genlisted
Install: claude install-skill amlei/amlei-skills
# web-image-gen
用浏览器自动化在网页版 AI 生图平台(豆包)批量生成图片。**一次任务中的所有图片只在同一个对话(会话)里连续生成**。
## 前置依赖
- macOS + Google Chrome(用户日常 profile 中已登录目标平台)
- Node.js + tsx:`scripts/` 下首次使用先 `npm install`(依赖仅 `playwright-core`,不下载浏览器,附着系统 Chrome)
- ⚠️ 必须用 **node + tsx** 运行,不要用 bun(bun 下 playwright WebSocket 连不上 CDP)
## 输入
1. **提示词文件**(一个或多个):baoyu 风格 `.md`(含 YAML frontmatter 亦可,发送前自动剥离 frontmatter)。
2. **输出路径**:每张图的目标 `.png` 路径。
3. **平台**:`--platform doubao`(默认,目前唯一支持)。
4. **模型**:默认 `Seedream 5.0 Flash`(免费最高档;`5.0 Pro` 需订阅且 4 倍消耗,不要擅自选)。
5. **比例**:豆包支持 `自动/9:16/2:3/3:4/1:1/4:3/3:2/16:9`,**没有 2.35:1**;默认 `16:9`。
## 命令
```sh
cd skills/amlei-web-image-gen/scripts
npm install
npx tsx src/generate.ts \
--platform doubao \
--job "prompts/01-cover.md=out/cover.png" \
--job "prompts/02-scene.md=out/02-scene.png:16:9" \
--ratio 16:9 --model "Seedream 5.0 Flash"
```
`--job` 可重复;格式 `提示词.md=输出.png[:比例]`。其它参数:`--port 9222`、`--timeout 300000`(单张出图超时)、`--login-timeout 180000`。
## 工作流程
1. 确认提示词文件存在;确认输出目录可写。
2. 运行命令(脚本自动完成浏览器接入,见下)。**一次任务的所有 `--job` 放进同一条命令**——它们会在同一个豆包对话里连续生成。
3. 首次运行若未登录,脚本会轮询等待,此时提示用户在弹出的 Chrome 窗口里扫码/登录。
4. 逐张下载完成后脚本打印 `SAVED` 行与最终文件清单;把**文件路径 + 实际分辨率**汇报给用户。
5. 单张失败(超时/无新图)时:可重跑该张(新开一条只含该 `--job` 的命令,会沿用同一浏览器实例)。
## 浏览器接入(脚本自动处理,用户无需关心)
Chrome 进程管理基于本仓 `packages/baoyu-chrome-cdp`(Copy 自 JimLiu/baoyu-skills,MIT),
适配逻辑在 `scripts/src/chrome.ts`:
- Chrome 136+ 在**默认 user-data-dir** 上忽略 `--remote-debugging-port`。脚本会把登录态最小文件集(`Local State`、`Default/Cookies[-journal]`、`Default/Pr