运行时依赖
安装命令
点击复制技能文档
GPT Image 2 — 由 ClawdChat 驱动的高质量 AI 图像生成 通过 Uno 工具网关调用 OpenAI gpt-image-2。
技能作用 两条极简命令行调用公共 ClawdChat 工具网关: Tool slug | 用途 | 费用 gpt-image-2.gpt_image2_submit | 提交生成任务,立即返回 job_id(异步) | 300 credits/次 gpt-image-2.gpt_image2_result | 轮询任务状态/就绪后取图 URL | 0 credits
本技能不含本地 Python 代码,所有凭证、传输与限流均交由 uno-cli 同伴技能处理。
凭证与权限(首次使用前必读) 凭证类型:ClawdChat API key(Bearer token) 存储位置:~/.clawdchat/credentials.json 文件由 uno-cli 创建并独占;本技能从不读取、打印或复制。 获取方式:用户执行 python ../uno-cli/bin/uno.py login,触发 ClawdChat OAuth 设备码流程(https://clawdchat.cn)并落盘 token。 授权范围:以登录身份调用 ClawdChat 工具网关;每次 gpt_image2_submit 扣 300 credits。 网络出口:提示词与 reference_image_urls 经 HTTPS 发往网关。勿在提示词中粘贴私密、敏感或个人身份信息——数据政策见 https://clawdchat.cn。 注销/吊销:执行 python ../uno-cli/bin/uno.py logout(由 uno-cli 管理)。
费用透明与确认规则 每次 gpt_image2_submit 消耗真实 credits。代理必须:
- 在首次调用前向用户展示拟用提示词、尺寸、风格与数量。
- 若当前回合未事先批准,须显式确认。
- 多图批次(n>1)或重试,每次提交均视为独立消费事件并再次确认,除非用户已预先授权整批。
- 遇错误响应,向用户展示错误,不得静默重试。
安装 本技能为 uno-cli 的薄封装,后者提供实际 Python CLI(bin/uno.py)。
- 手动安装 uno-cli
安装后目录结构: / ├── gpt-image2/ │ └── SKILL.md └── uno-cli/ ├── SKILL.md └── bin/uno.py # 实际 CLI
由此技能目录,CLI 相对路径为 ../uno-cli/bin/uno.py;下述示例均直接使用该路径。
- 一次性登录
生成图像 — 完整异步流程 单张 1024×1024 图约 150 s,超过默认 MCP 60 s 超时,必须采用“提交 → 轮询结果”模式。
步骤 1 — 提交 python ../uno-cli/bin/uno.py call gpt-image-2.gpt_image2_submit --compact \ --args '{"prompt":"樱花下的柴犬,晴朗午后","size":"1024x1024","style":"ghibli_anime"}'
响应(已由 uno-cli 扁平化,无需解包): {"success": true, "data": {"status": "pending", "job_id": "0b84b8f0f0c8", "estimated_seconds": 150}, "meta": {"latency_ms": 120, "credits_used": 300}} 记录 data.job_id。
步骤 2 — 轮询结果 python ../uno-cli/bin/uno.py call gpt-image-2.gpt_image2_result --compact --timeout 70 \ --args '{"job_id":"0b84b8f0f0c8","wait_seconds":50}' wait_seconds=50 让服务端等待 50 s(在 60 s MCP 窗口内);--timeout 70 给客户端留缓冲。 重复调用直至 data.status 为: done — 图像就绪,URL 在 data.items[].url error — 生成失败,错误信息在 data.error pending / running — 立即再次调用;勿客户端 sleep,服务端已代等 50 s。 通常 3–5 轮(总计约 150–250 s)。
参考 shell 循环 UNO=../uno-cli/bin/uno.py RESP=$(python "$UNO" call gpt-image-2.gpt_image2_submit --compact \ --args '{"prompt":"梵高星空","style":"oil_painting_vangogh"}') JOB_ID=$(echo "$RESP" | python3 -c "import json,sys; print(json.load(sys.stdin)['data']['job_id'])") for i in 1 2 3 4 5 6; do R=$(python "$UNO" call gpt-image-2.gpt_image2_result