happy-image-gen
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinesehappy-image-gen
happy-image-gen
Generates still images across 8 providers through one CLI: . The same CLI handles text-to-image and image-to-image (reference-driven) edits.
bun scripts/main.ts ...通过一个CLI工具实现8个提供商的静态图像生成。该CLI同时支持文本转图像和以参考图像为驱动的图像编辑功能。
bun scripts/main.ts ...Quick usage
快速使用
bash
bun scripts/main.ts --prompt "A calico cat on green grass, cinematic light" --ar 16:9 --image ./out.pngbash
bun scripts/main.ts --prompt "A calico cat on green grass, cinematic light" --ar 16:9 --image ./out.pngWhen to invoke this skill
何时调用此技能
Invoke this skill whenever the user:
- Asks to generate, create, draw, render, illustrate, or synthesize an image from text.
- Asks to restyle or transform an existing image they provide a path to.
- Names any image-generation model (DALL·E, gpt-image, Flux, SDXL, Gemini Image, Imagen, Seedream, Kolors, Wanx, Stable Diffusion) without specifying 即梦/Dreamina/Jimeng.
Route to instead when the user explicitly names 即梦, Jimeng, or the CLI.
happy-dreaminadreamina当用户出现以下需求时,调用此技能:
- 请求根据文本生成、创建、绘制、渲染、制作插图或合成图像。
- 请求对提供路径的现有图像进行重新风格化或转换。
- 提及任何图像生成模型(DALL·E、gpt-image、Flux、SDXL、Gemini Image、Imagen、Seedream、Kolors、Wanx、Stable Diffusion)但未指定即梦/Dreamina/Jimeng。
当用户明确提及即梦、Jimeng或 CLI时,请转至处理。
dreaminahappy-dreaminaStep 0: Preflight (BLOCKING — run before any generation)
步骤0:前置检查(必须完成——生成前执行)
Run these checks:
-
Locate EXTEND.md config. Check in order:
- (project)
./.happy-skills/happy-image-gen/EXTEND.md $XDG_CONFIG_HOME/happy-skills/happy-image-gen/EXTEND.md- (user)
~/.happy-skills/happy-image-gen/EXTEND.md
If none exist, runand followbun scripts/main.ts --setupto create one. Do not proceed to generation until the user has at least one provider configured.references/config/first-time-setup.md -
Verify a provider is usable. Confirm either an env var is set (e.g.,) or EXTEND.md references an
OPENAI_API_KEY/api_key_envthat resolves. If nothing resolves, loop back to setup.api_key_source -
Verify Bun is available. Run. If missing, fall back to
command -v bun.npx -y bun scripts/main.ts ...
执行以下检查:
-
定位EXTEND.md配置文件,按以下顺序查找:
- (项目级)
./.happy-skills/happy-image-gen/EXTEND.md $XDG_CONFIG_HOME/happy-skills/happy-image-gen/EXTEND.md- (用户级)
~/.happy-skills/happy-image-gen/EXTEND.md
如果不存在任何配置文件,运行并按照bun scripts/main.ts --setup创建配置文件。在用户完成至少一个提供商的配置前,请勿继续生成操作。references/config/first-time-setup.md -
验证提供商可用:确认已设置环境变量(如),或EXTEND.md中引用的
OPENAI_API_KEY/api_key_env可解析。若无法解析,返回步骤0重新配置。api_key_source -
验证Bun已安装:运行。若未安装, fallback 至
command -v bun。npx -y bun scripts/main.ts ...
Step 1: Choose a provider
步骤1:选择提供商
Pick in this order of preference:
- explicitly passed by the user.
--provider <id> - The in EXTEND.md.
default_provider - The first provider whose API key is present in the environment. Priority when auto-detecting: →
openai→google→replicate→stability→fal→ark→bailian.siliconflow
See for each provider's required env vars, default models, and strengths (e.g., prefer for text-in-image, for Flux-family photorealism, for Chinese text fidelity).
references/providers.mdgooglereplicateark按以下优先级选择:
- 用户明确传入的参数。
--provider <id> - EXTEND.md中设置的。
default_provider - 环境中已配置API密钥的首个提供商。自动检测优先级:→
openai→google→replicate→stability→fal→ark→bailian。siliconflow
查看获取各提供商所需的环境变量、默认模型及优势(例如,优先选择处理图像中嵌入文本的需求,适合Flux系列的照片级写实效果,适合中文文本保真度)。
references/providers.mdgooglereplicatearkStep 2: Fill in parameters
步骤2:填充参数
- : the user's full request, trimmed. Always double-quote.
--prompt - : aspect ratio —
--ar/1:1/16:9/9:16/3:4. See4:3for how each provider interprets this.references/aspect_ratio_map.md - :
--quality(fastest + cheapest),draft(default), orhd(4K-class, slower).ultra - : repeat for multiple reference images. Not every provider supports this — see providers.md.
--ref <path> - : override the default model for the chosen provider. Omit unless the user asked for a specific one.
--model - : REQUIRED — output file path. Use a descriptive name (e.g.,
--image <path>)../out/hero-landscape.png
- :用户的完整请求,已去除首尾空格。务必使用双引号包裹。
--prompt - :宽高比——可选值
--ar/1:1/16:9/9:16/3:4。查看4:3了解各提供商对该参数的解析方式。references/aspect_ratio_map.md - :质量等级,可选
--quality(最快且最便宜)、draft(默认)或hd(4K级别,速度较慢)。ultra - :可重复传入多个参考图像路径。并非所有提供商都支持此功能——详见providers.md。
--ref <path> - :覆盖所选提供商的默认模型。除非用户明确指定,否则无需填写。
--model - :必填参数——输出文件路径。建议使用描述性名称(例如
--image <path>)。./out/hero-landscape.png
Step 3: Run
步骤3:运行命令
bash
bun scripts/main.ts \
--prompt "..." \
--image ./out.png \
--provider openai \
--ar 1:1 \
--quality hdOn success the CLI prints the resolved absolute path and byte count. In mode it emits:
--jsonjson
{ "success": true, "provider": "openai", "model": "gpt-image-1", "image": "/abs/path.png", "size_bytes": 1416341, "format": "png" }Echo the path back to the user.
bash
bun scripts/main.ts \
--prompt "..." \
--image ./out.png \
--provider openai \
--ar 1:1 \
--quality hd运行成功后,CLI会输出解析后的绝对路径和文件字节数。在模式下,会输出:
--jsonjson
{ "success": true, "provider": "openai", "model": "gpt-image-1", "image": "/abs/path.png", "size_bytes": 1416341, "format": "png" }将输出路径反馈给用户。
Step 4: Handle errors
步骤4:错误处理
- — no API key in env and no EXTEND.md. Loop back to Step 0.
config: No provider selected ... - — key invalid or expired. Ask the user to refresh it.
[openai] OpenAI images API 401 ... - — prompt blocked. Show the raw error to the user; do not paraphrase.
[openai] ... 400 ... content_policy_violation - Timeouts / network errors — retry once. If still failing, surface the raw message and so the user knows what to check.
provider
See for a per-provider error table.
references/error_codes.md- :环境中无API密钥且未配置EXTEND.md。返回步骤0重新配置。
config: No provider selected ... - :密钥无效或过期。请用户更新密钥。
[openai] OpenAI images API 401 ... - :提示词违反内容政策。向用户展示原始错误信息,请勿转述。
[openai] ... 400 ... content_policy_violation - 超时/网络错误:重试一次。若仍失败,展示原始错误信息及对应的,以便用户排查问题。
provider
查看获取各提供商的错误对照表。
references/error_codes.mdReferences
参考文档
Read on demand:
- — all 8 providers, required env vars, default models, strengths.
references/providers.md - — how each provider interprets
references/aspect_ratio_map.md.--ar - — common errors per provider and fixes.
references/error_codes.md - — step-by-step for
references/config/first-time-setup.md.--setup - — EXTEND.md schema reference.
references/config/extend-schema.md
Template for : .
EXTEND.mdassets/EXTEND.template.md按需查阅:
- :所有8个提供商的详细信息、所需环境变量、默认模型及优势。
references/providers.md - :各提供商对
references/aspect_ratio_map.md参数的解析方式。--ar - :各提供商常见错误及修复方案。
references/error_codes.md - :
references/config/first-time-setup.md命令的分步指南。--setup - :EXTEND.md的 schema 参考文档。
references/config/extend-schema.md
EXTEND.md模板文件:。
assets/EXTEND.template.md