refine: SKILL.md 改为通用技能 — 剥离个人路径,环境信息移入 TOOLS.md

This commit is contained in:
2026-05-14 23:12:44 +08:00
parent 761f2aeb94
commit 1bac98e046
+50 -59
View File
@@ -5,124 +5,115 @@ description: "Generate images through Gemini web interface via a Puppeteer CLI.
# Gemini 网页版生图 # Gemini 网页版生图
通过 Puppeteer CLI (`scripts/cli.js`) 驱动 Gemini 网页完成生图全流程:打开标签页 → 导航 → 粘贴参考图 → 输入提示词 → 发送 → 等待生成 → 下载原图 通过 Puppeteer CLI (`scripts/cli.js`) 驱动浏览器完成 Gemini 网页生图全流程。
## 环境 浏览器由 `browser` 工具管理(CLI 通过 CDP 连接,默认 `http://127.0.0.1:9223`,可通过 `CDP_URL` 环境变量覆盖)。
浏览器由 `browser` 工具管理(CDP: `http://127.0.0.1:9223`)。 首次使用:
首次使用需安装依赖:
```bash ```bash
cd ~/.openclaw/skills/gemini-web-generate/scripts && npm install cd <skill-dir>/scripts && npm install
``` ```
定义命令行别名(所有命令沿用此设定): ## 快速开始
```bash ```bash
NODE="/home/dazhi/.nvm/versions/node/v22.22.0/bin/node" node scripts/cli.js generate --prompt "提示词" --mode single
CLI="scripts/cli.js"
``` ```
## 标准流程 CLI 自动完成:打开标签页 → 导航 → 粘贴参考图 → 输入提示词 → 发送 → 等待生成 → 下载到 `scripts/output/originals/` → 关闭标签页(single 模式)。
### 1. 启动浏览器 生图完成后将图片移到目标位置,通过 `message` 工具发送。
``` ## 所有生图方式
browser action=start
```
### 2. 生图 ### 生图
默认用 `--mode single`(生成后自动关闭标签页),CLI 自动下载图片到 `scripts/output/originals/`
```bash ```bash
$NODE $CLI generate --prompt "提示词" --mode single node scripts/cli.js generate --prompt "提示词" --mode single
``` ```
**带参考图** ### 图生图
```bash ```bash
$NODE $CLI generate --prompt "提示词" --image /path/to/ref.png --mode single # 单张参考图
$NODE $CLI generate --prompt "提示词" --images "/path/a.png,/path/b.png" --mode single node scripts/cli.js generate --prompt "提示词" --image /path/to/ref.png --mode single
# 多张参考图(逗号分隔,最多 10 张)
node scripts/cli.js generate --prompt "提示词" --images "/path/a.png,/path/b.png" --mode single
``` ```
参考图路径含空格时,先 `cd` 到目录再用相对路径。 参考图路径含空格时,先 cd 到目录再用相对路径。
### 3. 收集结果 ### 从文件或管道读取提示词
CLI 成功后将图片移动到工作区媒体目录:
```bash ```bash
LATEST=$(ls -t scripts/output/originals/ | head -1) node scripts/cli.js generate --prompt-file /path/to/prompt.txt --mode single
mv "scripts/output/originals/$LATEST" ~/.openclaw/workspace/media/generated/ echo "提示词" | node scripts/cli.js generate --prompt stdin --mode single
``` ```
然后用 `message` 工具发送。
### 4. 失败处理
CLI 超时或报错时,检查会话状态:
```bash
$NODE $CLI status --session <id> --wait
```
| 状态 | 处理 |
|:---|:---|
| `done` | `$NODE $CLI download --session <id>` 手动下载 |
| `generating` | 继续等待 |
| `error` | 报告错误,调整提示词重试 |
## 其他生图方式
### 多轮对话 ### 多轮对话
```bash ```bash
# 首轮(不加 --mode,保持标签页打开 # 首轮(不加 --mode,保持标签页)
$NODE $CLI generate --prompt "画一幅日落风景" node scripts/cli.js generate --prompt "画一幅日落"
# 续次(不加 --mode # 续次(不加 --mode
$NODE $CLI generate --session <id> --prompt "加入一艘小船" node scripts/cli.js generate --session <id> --prompt "加入一艘小船"
# 末轮(--mode single 自动关闭) # 末轮(--mode single 自动关闭)
$NODE $CLI generate --session <id> --prompt "最终调整" --mode single node scripts/cli.js generate --session <id> --prompt "最终调整" --mode single
``` ```
### 通过对话链接继续 ### 通过对话链接继续
```bash ```bash
$NODE $CLI generate --chatUrl "https://gemini.google.com/app/xxxx" --prompt "换成水彩风格" node scripts/cli.js generate --chatUrl "https://gemini.google.com/app/xxxx" --prompt "换成水彩风格"
``` ```
### 仅下载已有图片 ### 仅下载已有图片
对话已有生成图片时,不加 `--prompt` 直接下载: 对话已有生成图片时,不加 `--prompt` 直接下载:
```bash ```bash
$NODE $CLI generate --chatUrl "https://gemini.google.com/app/xxxx" --mode single node scripts/cli.js generate --chatUrl "https://gemini.google.com/app/xxxx" --mode single
``` ```
### 从文件或管道读取提示词 ## 结果处理
### 成功
图片在 `scripts/output/originals/`。移到目标位置后发送。
### 超时或失败
```bash ```bash
$NODE $CLI generate --prompt-file /path/to/prompt.txt --mode single node scripts/cli.js status --session <id> --wait
echo "提示词" | $NODE $CLI generate --prompt stdin --mode single
``` ```
| 状态 | 处理 |
|:---|:---|
| `done` | `node scripts/cli.js download --session <id>` |
| `generating` | 继续等待 |
| `error` | 报告错误,调整提示词重试 |
`--screenshot` 可在出错/超时时自动截图辅助诊断。
## 会话管理 ## 会话管理
```bash ```bash
$NODE $CLI sessions # 列出活跃会话 node scripts/cli.js sessions # 列出活跃会话
$NODE $CLI find_session --chatUrl "<url>" --open # 找回丢失的 session node scripts/cli.js find_session --chatUrl "<url>" --open # 找回丢失的 session
$NODE $CLI close --session <id> # 关闭会话 node scripts/cli.js close --session <id> # 关闭会话
node scripts/cli.js download --session <id> # 下载已生成图片
node scripts/cli.js status --session <id> [--wait] # 检查状态
``` ```
## generate 参数参考 ## generate 参数参考
| 参数 | 说明 | 默认值 | | 参数 | 说明 | 默认值 |
|:---|:---|:---| |:---|:---|:---|
| `--prompt` | 提示词。`"stdin"` 从标准输入读取 | 必填(与 `--chatUrl` 共用时可省略) | | `--prompt` | 提示词。`"stdin"` 从标准输入读取 | 必填(与 `--chatUrl` 共用时可省略,进入纯下载模式 |
| `--prompt-file` | 从文件读取提示词 | - | | `--prompt-file` | 从文件读取提示词 | - |
| `--image` | 单张参考图 | - | | `--image` | 单张参考图 | - |
| `--images` | 多张参考图,逗号分隔,最多 10 张 | - | | `--images` | 多张参考图,逗号分隔,最多 10 张 | - |