2026-05-14 18:10:57 +08:00
|
|
|
|
# oneimage - AI 图片生成器
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
**Claude Code Skill — 通过 oneinai API 调用 Gemini 图像模型,支持文生图与图生图**
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
## 📋 简介
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
oneimage 是一款 Claude Code Skill 插件,通过 [oneinai API](https://api.oneinai.com) 调用 **NanoBananaPro(Gemini 3 Pro Image Preview)** 模型,在 Claude Code 对话中直接生成高质量图片。支持文生图、图生图编辑、批量并发等多种模式。
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
## 🔗 相关链接
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
| 资源 | 地址 |
|
|
|
|
|
|
| --- | --- |
|
|
|
|
|
|
| GitHub 仓库 | [deijing/oneimage](https://github.com/deijing/oneimage) |
|
|
|
|
|
|
| oneinai API | <https://api.oneinai.com> |
|
|
|
|
|
|
| oneinai 控制台 | <https://api.oneinai.com/console/token> |
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
## ✨ 功能特点
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
- ✅ **文生图**:用自然语言描述场景,AI 生成对应图片
|
|
|
|
|
|
- ✅ **图生图**:上传本地图片 + 编辑描述,AI 修改生成新图片
|
|
|
|
|
|
- ✅ **10 种宽高比**:1:1 / 16:9 / 9:16 / 4:3 / 3:4 / 3:2 / 2:3 / 21:9 / 5:4 / 4:5
|
|
|
|
|
|
- ✅ **3 档分辨率**:1K(快速预览)/ 2K(推荐)/ 4K(超高清)
|
|
|
|
|
|
- ✅ **文字渲染**:支持在图片中渲染中文文字(招牌、海报、标语等)
|
|
|
|
|
|
- ✅ **并发批量**:多张图片并发生成,大幅缩短总耗时
|
|
|
|
|
|
- ✅ **配置文件管理**:API Key 存储在本地配置文件,安全便捷
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
## 📋 前置要求
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
- [Claude Code](https://docs.anthropic.com/en/docs/claude-code) CLI 已安装
|
|
|
|
|
|
- Python 3.10+
|
|
|
|
|
|
- oneinai API Key(在 [oneinai 控制台](https://api.oneinai.com/console/token) 创建)
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
## 🛠️ 安装
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
### 第一步:下载 Skill
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
# 如果目录不存在,先创建
|
|
|
|
|
|
mkdir -p ~/.claude/skills
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
# 克隆 oneimage 到 skills 目录
|
|
|
|
|
|
cd ~/.claude/skills
|
|
|
|
|
|
git clone https://github.com/deijing/oneimage.git
|
|
|
|
|
|
```
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
安装完成后目录结构如下:
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
```
|
|
|
|
|
|
~/.claude/skills/oneimage/
|
|
|
|
|
|
├── SKILL.md # Skill 定义文件
|
|
|
|
|
|
├── scripts/
|
|
|
|
|
|
│ ├── generate_oneinai.py # 文生图脚本
|
|
|
|
|
|
│ └── generate_oneinai_edit.py # 图生图脚本
|
|
|
|
|
|
└── references/
|
|
|
|
|
|
└── api-reference.md # API 参考文档
|
|
|
|
|
|
```
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
### 第二步:安装依赖
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
pip install httpx
|
|
|
|
|
|
```
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
### 第三步:配置 API Key
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
三种方式任选其一。
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
|
|
|
|
|
**方式 A:交互式配置(推荐)**
|
|
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
python ~/.claude/skills/oneimage/scripts/generate_oneinai.py --setup
|
|
|
|
|
|
```
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
按提示输入你的 API Key 即可,配置会保存到 `~/.oneimage/config.json`。
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
|
|
|
|
|
**方式 B:手动创建配置文件**
|
|
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
mkdir -p ~/.oneimage
|
|
|
|
|
|
echo '{"api_key": "sk-你的key"}' > ~/.oneimage/config.json
|
|
|
|
|
|
```
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
|
|
|
|
|
**方式 C:环境变量**
|
|
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
export ONEINAI_API_KEY="sk-你的key"
|
|
|
|
|
|
```
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
> 💡 **API Key 加载优先级**
|
|
|
|
|
|
> `--api-key` 命令行参数 > `ONEINAI_API_KEY` 环境变量 > `~/.oneimage/config.json` 配置文件
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
## 📖 使用方法
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
### 在 Claude Code 中使用
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
|
|
|
|
|
安装配置完成后,在 Claude Code 对话中输入:
|
|
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
```
|
|
|
|
|
|
/oneimage
|
|
|
|
|
|
```
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
|
|
|
|
|
然后描述你想要的图片即可。例如:
|
|
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
- "画一张江南水乡的风景"
|
|
|
|
|
|
- "生成一张 4K 超宽屏的故宫雪景"
|
|
|
|
|
|
- "批量生成 5 张不同风格的古风人像"
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
|
|
|
|
|
图生图编辑:
|
|
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
- "编辑 /path/to/photo.jpg,把背景改成竹林"
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
### 独立脚本使用
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
|
|
|
|
|
也可以脱离 Claude Code,直接在命令行中调用。
|
|
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
**文生图**:
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
python ~/.claude/skills/oneimage/scripts/generate_oneinai.py \
|
|
|
|
|
|
-p "一位中国女性,身穿汉服,站在竹林中,晨雾缭绕" \
|
|
|
|
|
|
-ar 3:4 \
|
|
|
|
|
|
-s 2K \
|
|
|
|
|
|
-o ./output.png
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**图生图**:
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
python ~/.claude/skills/oneimage/scripts/generate_oneinai_edit.py \
|
|
|
|
|
|
-i ./photo.jpg \
|
|
|
|
|
|
-p "将背景改为雪景,保持人物不变" \
|
|
|
|
|
|
-ar 3:4 \
|
|
|
|
|
|
-o ./edited.png
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**批量生成**:
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
# 准备任务文件 tasks.json
|
|
|
|
|
|
cat > tasks.json << 'EOF'
|
|
|
|
|
|
[
|
|
|
|
|
|
{"prompt": "描述1", "aspect_ratio": "3:4", "size": "2K", "output": "./out1.png"},
|
|
|
|
|
|
{"prompt": "描述2", "aspect_ratio": "16:9", "size": "1K", "output": "./out2.png"}
|
|
|
|
|
|
]
|
|
|
|
|
|
EOF
|
|
|
|
|
|
|
|
|
|
|
|
# 执行批量生成
|
|
|
|
|
|
python ~/.claude/skills/oneimage/scripts/generate_oneinai.py \
|
|
|
|
|
|
--batch tasks.json \
|
|
|
|
|
|
--workers 2
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## 📐 参数速查
|
|
|
|
|
|
|
|
|
|
|
|
### 文生图(`generate_oneinai.py`)
|
|
|
|
|
|
|
|
|
|
|
|
| 参数 | 简写 | 说明 | 默认值 |
|
|
|
|
|
|
| --- | --- | --- | --- |
|
|
|
|
|
|
| `--setup` | | 交互式配置 API Key | |
|
|
|
|
|
|
| `--api-key` | | 指定 API Key | 从配置加载 |
|
|
|
|
|
|
| `--prompt` | `-p` | 图片描述(必填) | |
|
|
|
|
|
|
| `--aspect-ratio` | `-ar` | 宽高比 | `1:1` |
|
|
|
|
|
|
| `--size` | `-s` | 分辨率(1K/2K/4K) | `2K` |
|
|
|
|
|
|
| `--output` | `-o` | 输出路径 | `output.png` |
|
|
|
|
|
|
| `--batch` | `-b` | 批量任务 JSON 文件 | |
|
|
|
|
|
|
| `--workers` | `-w` | 并发数 | 自动(默认 2) |
|
|
|
|
|
|
| `--retry` | `-r` | 重试次数(0-10) | `3` |
|
|
|
|
|
|
|
|
|
|
|
|
### 图生图(`generate_oneinai_edit.py`)
|
|
|
|
|
|
|
|
|
|
|
|
| 参数 | 简写 | 说明 | 默认值 |
|
|
|
|
|
|
| --- | --- | --- | --- |
|
|
|
|
|
|
| `--setup` | | 交互式配置 API Key | |
|
|
|
|
|
|
| `--api-key` | | 指定 API Key | 从配置加载 |
|
|
|
|
|
|
| `--input` | `-i` | 输入图片路径(必填) | |
|
|
|
|
|
|
| `--prompt` | `-p` | 编辑描述(必填) | |
|
|
|
|
|
|
| `--aspect-ratio` | `-ar` | 输出宽高比 | `1:1` |
|
|
|
|
|
|
| `--output` | `-o` | 输出路径 | `output.png` |
|
|
|
|
|
|
| `--batch` | `-b` | 批量任务 JSON 文件 | |
|
|
|
|
|
|
| `--workers` | `-w` | 并发数 | 自动(默认 2) |
|
|
|
|
|
|
| `--retry` | `-r` | 重试次数(0-10) | `3` |
|
|
|
|
|
|
|
|
|
|
|
|
> ⚠️ **互斥参数**
|
|
|
|
|
|
> `--prompt` 和 `--batch` 互斥,单图模式和批量模式必须二选一。
|
|
|
|
|
|
|
|
|
|
|
|
## 📊 分辨率参考
|
|
|
|
|
|
|
|
|
|
|
|
### 1K(快速预览)
|
|
|
|
|
|
|
|
|
|
|
|
| 宽高比 | 分辨率 |
|
|
|
|
|
|
| --- | --- |
|
|
|
|
|
|
| 1:1 | 1024×1024 |
|
|
|
|
|
|
| 16:9 | 1376×768 |
|
|
|
|
|
|
| 9:16 | 768×1376 |
|
|
|
|
|
|
| 4:3 | 1200×896 |
|
|
|
|
|
|
| 3:4 | 896×1200 |
|
|
|
|
|
|
|
|
|
|
|
|
### 2K(推荐)
|
|
|
|
|
|
|
|
|
|
|
|
| 宽高比 | 分辨率 |
|
|
|
|
|
|
| --- | --- |
|
|
|
|
|
|
| 1:1 | 2048×2048 |
|
|
|
|
|
|
| 16:9 | 2752×1536 |
|
|
|
|
|
|
| 9:16 | 1536×2752 |
|
|
|
|
|
|
| 4:3 | 2400×1792 |
|
|
|
|
|
|
| 3:4 | 1792×2400 |
|
|
|
|
|
|
|
|
|
|
|
|
### 4K(超高清)
|
|
|
|
|
|
|
|
|
|
|
|
| 宽高比 | 分辨率 |
|
|
|
|
|
|
| --- | --- |
|
|
|
|
|
|
| 1:1 | 4096×4096 |
|
|
|
|
|
|
| 16:9 | 5504×3072 |
|
|
|
|
|
|
| 9:16 | 3072×5504 |
|
|
|
|
|
|
| 4:3 | 4800×3584 |
|
|
|
|
|
|
| 3:4 | 3584×4800 |
|
|
|
|
|
|
|
|
|
|
|
|
## 🖼️ 图生图支持格式
|
|
|
|
|
|
|
|
|
|
|
|
| 格式 | 支持 | 备注 |
|
|
|
|
|
|
| --- | --- | --- |
|
|
|
|
|
|
| JPG / JPEG | ✅ | 推荐 |
|
|
|
|
|
|
| PNG | ✅ | 推荐 |
|
|
|
|
|
|
| WebP | ✅ | |
|
|
|
|
|
|
| GIF | ✅ | 仅使用第一帧 |
|
|
|
|
|
|
|
|
|
|
|
|
> 💡 **建议**
|
|
|
|
|
|
> 图片大小推荐小于 4MB,过大可能导致上传变慢或超时。
|
|
|
|
|
|
|
|
|
|
|
|
## ❓ 常见问题
|
|
|
|
|
|
|
|
|
|
|
|
### 提示「未找到 API Key」?
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
|
|
|
|
|
运行交互式配置命令:
|
|
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
python ~/.claude/skills/oneimage/scripts/generate_oneinai.py --setup
|
|
|
|
|
|
```
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
### 请求超时?
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
|
|
|
|
|
4K 图片生成较慢,脚本已设置充足的超时时间。如果仍然超时,可降低分辨率到 2K 或 1K。
|
|
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
### 收到 429 错误?
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
|
|
|
|
|
触发了 API 频率限制。脚本会自动指数退避重试(默认 3 次)。可加 `--retry 5` 增加重试次数。
|
|
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
### 更多问题
|
2026-05-13 17:03:56 +08:00
|
|
|
|
|
2026-05-14 18:10:57 +08:00
|
|
|
|
请查看 [FAQ](/support/faq) 或联系[售后支持](/support/after-sales)。
|