mcpField
I
imagegen

imagegen

github.com/ckorhonen创意与媒体2244 次安装5 周前更新
代码仓库

关于 imagegen

imagegen 是用于当前项目的图像生成与编辑 Skill,面向需要制作网站、游戏、界面等素材的创作者。它按生成、编辑或批量任务组织流程,并优先使用捆绑 CLI 以便重复运行。

主要功能

  1. 01生成单张图像或批量图像
  2. 02编辑现有图像与局部区域
  3. 03按任务类型选择生成或编辑流程
  4. 04通过提示词规范和参考示例组织输入
  5. 05检查结果并进行定向迭代

适用场景

  1. 01制作网站主视觉或产品图
  2. 02调整图像背景、光线或指定对象
  3. 03批量生成多个提示词的素材
  4. 04制作 UI 模型图、信息图或标志

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/ckorhonen/claude-skills --skill imagegen

安装后在 Claude Code 中输入/imagegen确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

LICENSE.txt
agents/
openai.yaml
assets/
imagegen-small.svg
references/
cli.md
codex-network.md
image-api.md
prompting.md
sample-prompts.md
scripts/
image_gen.py

详细介绍

图像生成技能

为当前项目生成或编辑图像(例如网站素材、游戏素材、UI 模型图、产品模型图、线框图、徽标设计、逼真图像、信息图)。默认使用 gpt-image-1.5 和 OpenAI Image API,并优先使用随附的 CLI,以确保运行结果可复现且确定。

适用场景

  • 生成新图像(概念艺术、产品照片、封面、网站主视觉)
  • 编辑现有图像(图像修复、蒙版编辑、光照或天气变换、背景替换、移除对象、合成、透明背景)
  • 批量运行(多个提示词,或针对多个提示词生成许多变体)

决策树(生成、编辑还是批量处理)

  • 如果用户提供了输入图像(或表示“编辑/修饰/修复/蒙版/翻译/本地化/仅更改 X”)→ 编辑
  • 否则,如果用户需要许多不同的提示词/素材 → 批量生成
  • 否则 → 生成

工作流

  1. 判断意图:生成、编辑还是批量处理(参见上方决策树)。
  2. 预先收集输入:提示词、准确文本(原文照录)、限制条件/排除项,以及任何输入图像/蒙版。对于多图编辑,按索引和用途标记每张输入图像;对于编辑,明确列出必须保持不变的内容。
  3. 如果是批量处理:在 tmp/ 下编写临时 JSONL(每行一项任务),运行一次,然后删除 JSONL。
  4. 将提示词扩充为简短的带标签规范(结构 + 限制条件),但不要凭空添加新的创作要求。
  5. 使用合理的默认设置运行随附的 CLI(scripts/image_gen.py)(参见 references/cli.md)。
  6. 对于复杂的编辑/生成,检查输出(打开/查看图像)并验证:主体、风格、构图、文本准确性,以及必须保持不变的内容/排除项。
  7. 迭代:进行一项有针对性的更改(提示词或蒙版),重新运行并再次检查。
  8. 保存/返回最终输出,并注明最终使用的提示词和标志。

临时文件和输出约定

  • 使用 tmp/imagegen/ 存放中间文件(例如 JSONL 批次文件);完成后删除。
  • 在本仓库中工作时,将最终文件写入 output/imagegen/。
  • 使用 --out 或 --out-dir 控制输出路径;文件名应保持稳定且具有描述性。

依赖项(缺少时请安装)

依赖管理优先使用 uv。

Python 包:

uv pip install openai pillow

如果无法使用 uv:

python3 -m pip install openai pillow

环境

  • 执行在线 API 调用时,必须设置 OPENAI_API_KEY。

如果缺少密钥,请告知用户执行以下步骤:

  1. 在 OpenAI 平台 UI 中创建 API 密钥:https://platform.openai.com/api-keys
  2. 在其系统中将 OPENAI_API_KEY 设置为环境变量。
  3. 如有需要,可提供指导,帮助其为所在操作系统/Shell 设置环境变量。
  • 切勿要求用户在聊天中粘贴完整密钥。请用户在本地设置密钥,并在准备就绪后确认。

如果无法在此环境中安装依赖项,请告知用户缺少哪项依赖,以及如何在本地安装。

默认设置和规则

  • 除非用户明确要求使用 gpt-image-1-mini,或明确偏好更便宜/更快的模型,否则使用 gpt-image-1.5。
  • 除非用户明确要求编辑,否则假定用户需要生成新图像。
  • 进行任何在线 API 调用前,必须先获取 OPENAI_API_KEY。
  • 所有 API 调用均使用 OpenAI Python SDK(openai 包);不得使用原始 HTTP。
  • 如果用户要求编辑,请使用 client.images.edit(...),并包含输入图像(如有提供蒙版,也需包含)。
  • 优先使用随附的 CLI(scripts/image_gen.py),而不是编写一次性脚本。
  • 切勿修改 scripts/image_gen.py。如果缺少某项功能,继续操作前先询问用户。
  • 如果结果明显不相关或不符合限制条件,请通过小幅、针对性的提示词更改进行迭代;只有缺少的信息会阻碍任务成功时才提问。

提示词扩充

将用户提示词重新整理为结构化、面向生产的规范。只将隐含细节明确化;不要凭空添加新要求。

用例分类(slug 必须完全一致)

将每个请求归入以下类别之一,并确保在提示词和引用中使用一致的 slug。

生成:

  • photorealistic-natural — 具有真实质感和自然光线的抓拍式/编辑风格生活场景。
  • product-mockup — 产品/包装照片、目录图片、周边商品概念。
  • ui-mockup — 看起来可直接交付的应用/网页界面模型。
  • infographic-diagram — 布局和文字结构清晰的图表/信息图。
  • logo-brand — Logo/标志探索,适合矢量化。
  • illustration-story — 漫画、儿童读物插画、叙事场景。
  • stylized-concept — 以风格为主导的概念艺术、3D/风格化渲染。
  • historical-scene — 符合时代特征/历史知识的场景。

编辑:

  • text-localization — 翻译/替换图中文字,同时保留布局。
  • identity-preserve — 试穿、将人物置于场景中;锁定面部/身体/姿势。
  • precise-object-edit — 移除/替换特定元素(包括室内空间替换)。
  • lighting-weather — 仅更改一天中的时段/季节/氛围。
  • background-extraction — 透明背景/干净抠图。
  • style-transfer — 在更改主体/场景的同时应用参考风格。
  • compositing — 合并/插入多张图像,并匹配光线/透视。
  • sketch-to-render — 将绘图/线稿转为照片级真实感渲染图。

快速澄清(增强还是凭空创造):

  • 如果用户说“为落地页制作一张主视觉图”,你可以补充该用途所隐含的布局/构图约束(例如“右侧留出充足的负空间,用于放置标题文字”)。
  • 不要引入用户未要求的新创意元素(例如添加吉祥物、更改主体、虚构品牌名称/Logo)。

模板(仅包含相关行):

Use case: <taxonomy slug>
Asset type: <where the asset will be used>
Primary request: <user's main prompt>
Scene/background: <environment>
Subject: <main subject>
Style/medium: <photo/illustration/3D/etc>
Composition/framing: <wide/close/top-down; placement>
Lighting/mood: <lighting + mood>
Color palette: <palette notes>
Materials/textures: <surface details>
Quality: <low/medium/high/auto>
Input fidelity (edits): <low/high>
Text (verbatim): "<exact text>"
Constraints: <must keep/must avoid>
Avoid: <negative constraints>

增强规则:

  • 保持简短;仅添加用户已暗示或在其他地方提供的细节。
  • 始终将请求归入上述分类 slug,并针对该类别调整约束/构图/质量。使用该 slug 在 references/sample-prompts.md 中查找匹配示例。
  • 如果用户提出宽泛请求(例如“为这个网站生成图片”),请自行判断,提出有品位且符合情境的素材,并为每项素材指定一个分类 slug。
  • 对于编辑请求,明确列出不变项(“仅更改 X;保持 Y 不变”)。
  • 如果缺少任何会妨碍成功完成任务的关键信息,请提问;否则直接执行。

示例

生成示例(主视觉图)
Use case: stylized-concept
Asset type: landing page hero
Primary request: a minimal hero image of a ceramic coffee mug
Style/medium: clean product photography
Composition/framing: centered product, generous negative space on the right
Lighting/mood: soft studio lighting
Constraints: no logos, no text, no watermark
编辑示例(不变项)
Use case: precise-object-edit
Asset type: product photo background replacement
Primary request: replace the background with a warm sunset gradient
Constraints: change only the background; keep the product and its edges unchanged; no text; no watermark

提示词最佳实践(简明列表)

  • 按场景 -> 主体 -> 细节 -> 约束的结构编写提示词。
  • 说明预期用途(广告、UI 模型、信息图),以确定呈现模式和精致程度。
  • 使用摄影和构图术语来实现照片级真实感。
  • 将确切文字加上引号,并指定字体排印方式和位置。
  • 对于难处理的词,逐字母拼写,并要求原样呈现。
  • 对于多图输入,按索引引用图像,并说明如何组合。
  • 对于编辑任务,每次迭代都重复说明不变项,以减少偏差。
  • 通过每次只更改一项的后续要求进行迭代。
  • 对于对延迟敏感的运行,从 quality=low 开始;对于文字密集或细节要求严格的输出,使用 quality=high。
  • 对于严格编辑(锁定身份/布局),可考虑使用 input_fidelity=high。
  • 如果结果显得“俗气”,添加简短的“Avoid:”行(图库照片感;俗套的镜头光晕;过度饱和的霓虹色;强烈的泛光;过度锐化;杂乱),并指定克制的风格(“编辑风格”“高端”“微妙”)。

更多原则:references/prompting.md。可复制/粘贴的规格:references/sample-prompts.md。

按素材类型提供的指导

素材类型模板(网站素材、游戏素材、线框图、Logo)已整合到 references/sample-prompts.md 中。

CLI + 环境说明

  • CLI 命令和示例:references/cli.md
  • API 参数快速参考:references/image-api.md
  • 如果网络审批/沙盒设置造成阻碍:references/codex-network.md

参考索引

  • references/cli.md:介绍如何通过 scripts/image_gen.py 运行图像生成、编辑和批处理(命令、标志、用法示例)。
  • references/image-api.md:介绍 API 层面的可用选项(参数、尺寸、质量、背景、仅适用于编辑的字段)。
  • references/prompting.md:提示词原则(结构、约束/不变量、迭代模式)。
  • references/sample-prompts.md:可复制粘贴的提示词示例(生成 + 编辑工作流;仅供参考)。
  • references/codex-network.md:环境/沙盒/网络审批故障排查。

评论

支持 Markdown