imagegen 是做什麼的?
一個指令即可呼叫 /images/generations 或 /images/edits 並將結果儲存至當前專案。
設定(由使用者執行一次)
- 需要 OpenAI Images API 或任何相容 OpenAI 的圖片 API 的 API 金鑰。
- 環境變數(在 Windows 上,使用
setx設定的值會從登錄檔讀取,因此不需要重新啟動代理):IMAGEGEN_API_KEY:API 金鑰。若未設定,則回退使用OPENAI_API_KEY。IMAGEGEN_BASE_URL:選用,預設為https://api.openai.com/v1。IMAGEGEN_MODEL:選用,預設為gpt-image-2。
- Python 3.8 以上,僅需標準函式庫。將此資料夾安裝為
~/.claude/skills/imagegen/(Claude Code)及/或~/.codex/skills/imagegen/(Codex)。 - 選用:將一個
imagegen包裝指令放置在 PATH 中(範例位於儲存庫的wrappers/目錄)。若無此包裝,請將下方imagegen替換為python <此技能資料夾>/scripts/imagegen.py。
生成
imagegen "<提示詞>" [--size 1536x1024] [--quality high] [--n 2] [--out path.png]
輸出選項(僅在指定時才會發送;並非所有 API 或模型都接受):--background transparent|opaque|auto、--format png|jpeg|webp、--compression 0-100(僅 jpeg/webp)。
編輯(傳入一或多張輸入圖片)
imagegen "<要變更的內容>" --image input.png [--image ref.png] [--mask mask.png]
輸出
於標準輸出一行 JSON:
{"ok": true, "mode": "generate", "paths": ["/path/to/project/output/imagegen/20260101-120000-orange-cat.png"], "seconds": 42.9, "model": "gpt-image-2", "revised_prompt": null, "sidecars": ["/path/to/project/output/imagegen/20260101-120000-orange-cat.json"]}
每張圖片會產生一個側車檔案 <相同名稱>.json,內容包含提示詞、修訂後的提示詞、模型、尺寸、品質、其他選項、輸入圖片與遮罩路徑、耗時與建立時間(使用 --no-sidecar 可關閉)。最後一張圖片即為前一次輸出中的最後一個路徑;若無(新工作階段),請取用 output/imagegen/ 中最新的圖片,並讀取其 .json 檔案以取得當初生成該圖片的提示詞。
失敗時:{"ok": false, "error": "..."} 且結束代碼為 1。請讀取 paths 並向使用者回報。若錯誤訊息指出沒有 API 金鑰,請告知使用者如何設定 IMAGEGEN_API_KEY;請勿自行尋找金鑰。
工作方式
- 預設:根據使用者的要求生成一次,並回報路徑。除非使用者要求,否則請勿開啟或評斷圖片,也不要重新生成。
- 僅使用使用者說過的話。請勿自行發明風格或細節。若缺少某些圖片無法使用的必要條件(例如圖片上確切的文字、橫向或直向),請在生成前先詢問一次。
- 當使用者要求變更結果(例如「把左邊的變成藍色」),請使用
--image <最後路徑>編輯最後一張圖片,而非從頭生成。 - 可同時並行要求數張獨立圖片(同時執行不同的指令)。
- 僅在使用者要求迭代(「迭代直到滿意」)且您可以檢視圖片時:撰寫一份簡短的可驗證需求清單,生成後開啟圖片並逐一檢查。針對局部問題使用
--image編輯修正,僅在整體方向錯誤時才重新生成。當所有項目通過或經過 3 輪後停止,並回報每個版本的路徑與任何仍未通過的項目。
注意事項
- 若不指定
--out,檔案會儲存在目前目錄下的output/imagegen/<時間>-<單詞>.png(副檔名會依--format而定)。 - 尺寸:
1024x1024(正方形)、1536x1024(橫向)、1024x1536(直向)。gpt-image-2 也接受自訂尺寸,例如2048x1152(16:9):兩邊皆為 16 的倍數,最長邊不超過 3840,長寬比介於 1:3 與 3:1 之間。省略--size則自動選擇。 --quality low最適合草稿;high適合最終素材。xhigh/max僅在支援的模型上生效。- 單張圖片約需 30-90 秒。請在前景執行,並設定至少 600000 ms 的逾時;請勿輪詢。
- 撰寫提示詞時請依序包含:資產類型、主體、風格、構圖、光線、確切文字(若有,請用引號括起)。非英文提示詞也可運作。
- 必須出現在圖片上的文字請用引號括起,逐字寫出,並說明位置:例如頂部標題寫著「Summer Sale」。不常見的單字請逐字母拼出。
- 若有多張輸入圖片,請依序說明每張圖片的用途:「圖片 1:要編輯的產品照片。圖片 2:僅作為風格參考。」
- 編輯時請清楚說明哪些部分要變更,並強調其他部分保持不變:「僅將外套改為紅色;臉部、姿勢、背景與光線保持不變。」在後續每次編輯中重複描述不變的部分。
--background transparent需要 png 或 webp 輸出格式,且模型須支援。--dry-run會印出請求內容但不呼叫 API。- 請勿列印或寫出 API 金鑰。