技術鴨生圖 是做什麼的?
使用本技能的 Go 程式完成圖片生成和編輯。整個資料夾解壓即用,用戶端無需 Python、Node.js 或 Go,也無需執行安裝命令。執行時使用程式絕對路徑;不要假設已加入 PATH。
選擇程式
通用包的 bin/ 包含全部五個平台程式。首次呼叫時根據實際執行命令的環境選擇系統與 CPU 架構;WSL 使用 Linux 程式。macOS/Linux 可用 uname -s 與 uname -m 判斷;x86_64 對應 amd64,arm64/aarch64 對應 arm64。
| 執行環境 | 相對本技能目錄的程式路徑 |
|---|---|
| Windows Intel/AMD x64 | bin/jishuya-image-windows-amd64.exe |
| macOS Intel | bin/jishuya-image-darwin-amd64 |
| macOS Apple Silicon | bin/jishuya-image-darwin-arm64 |
| Linux x64 | bin/jishuya-image-linux-amd64 |
| Linux ARM64 | bin/jishuya-image-linux-arm64 |
Windows 可查詢 [System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture。未列出的系統/架構說明缺少對應程式,不猜測相容性。PowerShell 使用 & "程式絕對路徑";macOS/Linux 若解壓未保留執行權限,對所選程式執行 chmod +x "程式絕對路徑"。macOS 包未經開發者簽名/公證,系統若攔截,應告知用戶按系統提示確認來源,不自動關閉系統保護。
執行流程
- 首次使用或出現配置錯誤時執行
doctor;它只查詢模型,不生圖。Key 已配置且請求明確時直接執行,無需每張圖再次確認。Key 缺失時給出用戶在本機終端執行的完整init命令,也可由用戶為宿主進程設定JISHUYA_IMAGE_API_KEY;不要讓用戶在對話裡貼上金鑰,也不要在不可互動的後台等待輸入。已有配置或環境變數可直接使用,init是可選的配置儲存步驟。 - 明確的新圖片需求使用
generate;參考圖修改或「把剛才那張……」使用edit,傳入用戶提供或前文已產生的本機圖片絕對路徑。任務缺少實際參考圖時先確定圖片位置,不能捏造路徑。 - 按需求選擇參數;沒有明確數量時生成一張。未指定模型時使用配置中的模型,沒有可用模型配置時預設
gpt-image-2;models可查可見模型。不要擅自切換模型重試。 - 保持當前請求執行直至完成;宿主返回執行階段時繼續等待同一個進程。成功後以
paths的實際檔案為準展示圖片並給出位置,同時告知warnings中未滿足的要求;失敗時檢查返回的result.paths/result.partial_paths,說明已有結果和錯誤。
Key 優先讀取 JISHUYA_IMAGE_API_KEY,其次讀取程式管理的用戶配置檔案。環境變數模式在沒有用戶配置目錄時也可直接使用;init 儲存配置仍需要該目錄。不要讀取、顯示或複製配置檔案內的 Key。API 固定為 https://www.jishuya.net/v1。若 bin/ 缺少對應程式,先說明需要完整發行 ZIP;只下載原始碼或複製 SKILL.md 不包含可執行程式,下載入口見 README.md。
宿主沙箱必須允許程式讀取本機配置、寫入指定輸出目錄並存取技術鴨。遇到權限拒絕時,按宿主提供的審批方式申請此次命令所需權限;禁止審批的環境應說明阻塞並給出本機終端命令。不要關閉沙箱、放寬 Key 檔案 ACL 或自行複製金鑰來繞過限制。用戶已為宿主進程配置環境變數時,程式可直接使用它,即使本機配置檔案不可讀。
命令範例
下列 PROGRAM 替換為目前系統程式的絕對路徑;PowerShell 呼叫帶空格路徑時使用 & "完整路徑"。
PROGRAM generate --prompt "一隻坐在窗邊的小黃鴨" --output-dir "專案目錄/output/imagegen"
PROGRAM edit --image "原圖絕對路徑.png" --prompt "保持主體不變,將背景改為藍色" --output-dir "專案目錄/output/imagegen"
PROGRAM edit --image "參考圖一.png" --image "參考圖二.png" --prompt "參考第一張構圖和第二張配色"
PROGRAM generate --prompt "透明背景的產品圖" --background transparent
PROGRAM generate --model gpt-image-2.6-sunburst --prompt "生成真正的 GIF 動畫:紅球左右移動,2 幀循環,每幀 200 毫秒,輸出 GIF 檔案" --format gif --frame-count 2 --frame-duration-ms 200
PROGRAM generate --help
PROGRAM edit --help
普通圖片預設使用 PNG、1024x1024 和 auto 品質;根據需求調整尺寸、品質和比例。用戶要求具體尺寸時,同時在提示詞中說明尺寸和寬高比,完成後核對實際圖片。--output-dir 優先使用目前任務的輸出目錄;省略時寫入目前工作目錄的 jishuya-output/。預設逾時 600 秒。
進階參數與平台能力
2026-11-09 實測:gpt-image-2、gpt-image-2.6-sunburst、gpt-image-2.6-flare 均可回傳 PNG;參考圖編輯、多參考圖、兩張輸出和透明 PNG 有成功案例。2.6 Sunburst/Flare 在提示詞明確要求 GIF 動畫後,分別透過 2 幀/200 毫秒和 4 幀/120 毫秒的循環動畫驗證。Flare 流式最終圖片已通過,客戶端相容技術鴨的結果事件。以下限制來自端點實測,不代表模型本身的能力:
- 預設請求
1024x1024多次回傳1254x1254;提示詞與參數同時指定1536x1024有成功案例,仍須檢查實際尺寸。 - JPEG、WebP、原生 SVG 尚未通過;明確提示詞後仍有回傳 PNG 的情況,不能只按副檔名判斷成功。
- 流式最終圖可用,但請求的中間預覽圖未回傳;客戶端會透過
warnings提醒,不能宣稱有即時圖片預覽。 - Flare 的
low/medium/high請求成功且回應品質標註一致;xhigh/max回傳標註為medium,不能宣稱已按更高檔生成。客戶端會提示平台報告的尺寸、品質差異。 - mask 仍會修改遮罩外像素。markup 在提示詞補充左上位置與座標後有成功案例,但不能保證嚴格區域約束或其他像素不變。
用戶需要上述未通過能力時先說明目前實測限制;不要將錯誤格式、錯誤區域或僅有成功退出碼的結果宣稱為滿足需求。詳細的模型與用例對應關係見 README.md。參數入口仍保留,供端點修復後驗證。
- 通用參數:
--model、--size、--quality、--complexity、--count、--format、--background、--compression、--moderation。品質可傳auto/low/medium/high/xhigh/max,輸出可傳png/jpeg/webp/gif/svg;這只是客戶端傳參範圍,必須以技術鴨端點實際支援為準。 - 編輯:重複
--image最多 16 張;--mask與--markup互斥且必須為 PNG。尺寸須符合首張參考圖;標註圖應為獨立透明圖層。程式檢查輸入檔案簽名,不代替端點檢查尺寸和透明度。 - GIF:除
--format gif外,提示詞必須明確「生成 GIF 動畫」、運動內容、幀數和單幀時長;僅傳格式參數曾回傳 PNG。--frame-count 2–16、--frame-duration-ms 20–2000;不能與 mask、流式或壓縮率同用。程式拒絕損壞或單幀 GIF,動畫效果及指定幀數/時長仍需核對。 - SVG:一次一張,可加
--svg-model和--svg-reasoning,後者需要作者模型;不能與流式或壓縮率同用。SVG 編輯、透明 SVG、額外品質檔等需要端點實測,不能承諾可用。 - SSE:
--stream或--partial-images 1–3。程式隨事件儲存已收到的圖片,結束後透過 JSON 回傳路徑;對話中不提供即時預覽。流中斷時保留已儲存檔案。
生成和編輯會消耗技術鴨額度。請求失敗、逾時或流中斷後不要自動重複提交;先告知用戶並核對平台記錄。models 成功不等於生圖功能驗證成功。首次使用、配置、升級、停用和卸載見 README.md。程式不複製技能、不改寫個人規則、不自動更新。