cover-and-copy
根据中文文案、视频脚本、大纲或文档内容生成高点击短视频封面和小红书配套文案,支持固定人脸身份参考、可配置封面风格文档、竖版 3:4 与横版 16:9/4:3 延展。适用于小红书、抖音、B 站封面、短视频首帧、爆款缩略图、标题和正文生成等场景。
Source facts
- Repository
- huangbai-AI/cover-and-copy
- Last source activity
- May 5, 2026 at 11:56
- Detected SKILL.md language
- Chinese
- Stars
- 6
- Forks
- 1
Install options
The review-first prompt is selected by default. You can switch to a direct command or download a local copy.
Review the source files
Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.
Showing SKILL.md
SKILL.md
Source instructions · Read-only preview- name
- Cover and Copy
- description
- 根据中文文案、视频脚本、大纲或文档内容生成高点击短视频封面和小红书配套文案,支持固定人脸身份参考、可配置封面风格文档、竖版 3:4 与横版 16:9/4:3 延展。适用于小红书、抖音、B 站封面、短视频首帧、爆款缩略图、标题和正文生成等场景。
# Cover and Copy
## 核心目标
根据用户提供的中文文案、视频脚本、大纲或文档内容,生成高点击率短视频封面和小红书配套文案。默认第一步必须先生成 3 张竖版 `3:4` 封面供用户选择;当用户要求横版、全套封面或已选定竖版母版时,再基于竖版生成 `16:9` 和 `4:3` 横版封面。当用户要求标题、小红书文案、发布文案或全套内容包装时,生成符合“设计师黄白”表达风格的标题和 200 字左右正文。
封面要有强点击感、强层级、强质感和明确视觉钩子。不要做普通干净海报,也不要把脚本内容平均塞进画面。每张封面只表达一个最强钩子。
封面视觉风格由独立文档提供,默认目录为 `references/cover-styles/`。`SKILL.md` 只负责主流程、硬约束、工具链路和质量检查;具体色彩、字体、光线、材质、背景世界和禁用风格元素必须从自动匹配或用户指定的风格文档读取。
默认人脸参考图:`assets/face/default-face.png`。生成人物时必须把这张图片文件作为真实图片输入传给生图模型。它是身份锚点,不是构图模板:保持本人脸部辨识度,但根据文案主题自然调整表情、服装、动作、光线和场景。
## 硬性执行约束
- 禁止只在提示词里写 `assets/face/default-face.png` 或本地路径来声称“参考了人脸”。路径文字不会自动把图片传给模型。
- 只要用户请求输出封面图、首帧图、缩略图或任何封面性质的视觉图,默认必须有人物出镜,且该人物必须是用户本人;不要生成无人封面、纯物品封面、纯场景封面或陌生模特封面,除非用户明确要求不要本人出镜。
- 只要本轮任务是生图、改图、扩图、变体,且画面里存在人物、人像、博主出镜、封面主角、教程讲解者、创作者形象或任何可识别的人类角色,必须先把默认人脸参考图或用户最新提供的人脸参考图作为真实图片载入当前对话上下文,再进行后续生成;未载入人脸图前禁止开始出图。
- 第一轮封面输出必须直接提供 3 张图片供用户选择,不能只给 1 张,也不能先给提示词、分析稿或单张试生成结果代替。
- 必须使用支持图片输入的生图、编辑或合成流程,把 `assets/face/default-face.png` 作为输入图传给模型;如果用户明确提供了新的人脸参考图,则优先使用用户提供的图片。
- 只要任务包含人物出镜、封面人物设定,或任何默认会出现“讲解者/创作者/主角”的场景,必须强制生成用户本人脸;3 张候选图中的每一张都必须固定出现用户本人脸,不能出现无人物版本、背身遮脸版本、陌生人脸、通用模特脸、AI随机脸,或仅部分图片带人脸的情况。
- 只要任务目标是封面图,即使用户文案本身没有写“人物出镜”,也要按“本人必须出镜”处理;除非用户明确指定不要人物或只要纯产品图,否则不得跳过本人出镜。
- 若生成结果里本人脸缺失、被遮挡到无法辨认、辨识度明显跑偏,或被替换成陌生人脸,该结果视为失败,必须继续重生成,不得作为可交付结果。
- 生图前必须优先使用 `view_image` 把默认人脸参考图载入当前对话上下文;这一步不需要 `OPENAI_API_KEY`。如果本轮已经通过用户上传图片或 `view_image` 明确载入了人脸参考图,后续才可以调用内置 `image_gen` 工具生成封面。
- 如果当前会话不能使用 `view_image`,也不能把图片文件作为真实输入传给模型,则不要生成需要本人出镜的封面;必须先告知用户当前无法满足“固定人脸身份参考”的硬约束。
- 生成封面前必须读取 `references/cover-styles/` 下的可用风格文档,并根据内容简报自动匹配最合适的 1 个风格后直接生图;除非用户明确要求先确认风格,否则不要停下来询问或等待选择。
- 封面风格必须从 `references/cover-styles/` 下的独立 `.md` 文档读取;禁止把具体风格细节继续堆进 `SKILL.md`。
- 风格文档只能写视觉风格:适用题材、视觉语法、色彩、字体与标题质感、光线、材质、背景世界和避免元素。禁止在风格文档里写主流程、工具调用、人脸链路、文案生成流程或发布流程。
- 默认使用 Codex 对话内置的 `image_gen` 能力生成封面:先用 `view_image` 把人脸参考图真实载入当前上下文,再调用 `image_gen`,并在提示词里明确“以上一张已载入的人脸参考图作为身份锚点”。不要默认改走本地 CLI 或后台脚本。只有当内置 `image_gen` 不可用、用户明确要求后台 API、或内置生图结果人脸稳定性不足时,才使用本 skill 自带的 `scripts/face_edit_cover.py` 作为兜底;该脚本会调用 `$CODEX_HOME/skills/.system/imagegen/scripts/image_gen.py edit`,自动把人脸参考图作为第一张真实输入图上传,并在最终提示词前强制追加身份锁定约束。若输出数量少于 3 张且未显式豁免,脚本会直接失败。如果改用 `gpt-image-1.5`,才额外传入 `--input-fidelity high`。如果一次生成多图不稳定,逐张生成。
- 人脸参考只锁定身份:保持脸型、五官比例、眉眼特征、年龄感和整体辨识度;不要复制参考图背景、服装、姿势、手势、室内环境或原始光线。
- 生成结果必须优先检查脸是否像本人;如果脸部辨识度明显偏离,应重新生成,不要把偏离结果当成完成。表情默认自信的微笑,除非用户另有要求。
## 输入范围
支持以下输入:
- 短文案、选题描述、口播摘要。
- 完整视频脚本、口播稿、拍摄大纲。
- 用户粘贴的文档内容。
- 可读取文本的本地文档文件,例如 `.txt`、`.md`、`.docx`、`.pdf`。读取文档后先提炼内容简报,再生成封面。
- 用户提供的历史标题、历史小红书文案或表达风格参考。若提供新样本,优先从新样本中提炼语气和标题结构。
暂不承诺自动解析原始视频文件。如果用户只上传视频但没有脚本、转写稿或大纲,先说明当前 skill 需要文本输入,并请用户提供脚本或转写内容。
## 工作流
1. 识别输入类型:判断用户给的是短文案、脚本、大纲、文档内容还是文档文件。
2. 提炼内容简报:读取 `references/content-brief.md`,从输入中提炼主题、核心钩子、目标观众、核心卖点、视觉道具、人物动作和背景世界。
3. 判断输出类型:如果用户只要求标题、小红书文案、发布文案、简介或 caption,直接读取 `references/copywriting.md` 生成文字,不要生图;如果用户要求封面或首帧,则继续封面流程;如果用户要求全套内容包装,则封面和文案都生成。
4. 匹配封面风格:读取 `references/cover-styles/` 下的可用 `.md` 风格文档,并根据内容简报自动选择最适合的 1 个风格后继续执行,不要停下来让用户确认。如果用户本轮已经明确指定风格名称或风格文档路径,直接匹配并读取对应文档。如果没有完全匹配,选择语义最接近的现有风格,并在最终结果里简短说明使用了哪个风格;只有当风格目录缺失或为空时,才告知用户无法继续生图。
5. 生图前强制载入人脸:如果本轮任务是封面图、首帧图、缩略图,或视觉任务里会出现任何人物或默认创作者形象,先调用 `view_image` 读取默认人脸参考图或用户最新提供的人脸参考图,把它作为真实图片载入当前对话上下文;这一步是必经步骤,不能跳过,也不需要 `OPENAI_API_KEY`。
6. 生成竖版封面:读取 `references/cover-prompt-templates.md`,把自动匹配或用户指定的风格文档内容填入风格相关变量,优先调用 Codex 内置 `image_gen` 直接生成 3 张 `3:4` 竖版封面供用户选择。三张封面使用同一个主标题和副标题,但构图、人物动作、核心道具和视觉重心必须不同,且每一张都必须固定出现用户本人脸;封面图默认必须有人物,不得生成无人封面。
7. 检查并迭代:检查脸部辨识度、标题可读性、风格匹配、画面主次、道具逻辑、背景世界、是否有假 logo/水印/乱码/过多小字;同时逐张确认是否清晰出现用户本人脸。任一图片未出现本人脸、脸被遮挡无法辨认或像陌生人,直接判失败并针对性重生成。
8. 横版延展:当用户要求横版、全套封面,或已选定竖版母版时,读取 `references/horizontal-adaptation.md`,基于竖版生成同系列 `16:9` 和 `4:3` 横版封面。
9. 文案生成:当用户要求小红书文案、标题、发布文案、简介或全套内容包装时,读取 `references/copywriting.md`,根据内容简报生成标题候选和 200 字左右正文。
10. 除非用户要求过程稿,否则不要输出分析、标题方案或提示词草稿;直接生成图片、文案或给出最终结果。
## 本人出镜执行链路
当任务要求“本人必须出镜”时,不要只停留在提示词约束,必须走真实传图链路:
1. 检查 `assets/face/default-face.png` 是否存在;如果用户提供了新照片,优先使用新照片。
2. 优先调用 `view_image`,例如读取 `/Users/a1/.codex/skills/cover-and-copy/assets/face/default-face.png`,把选定的人脸参考图作为真实图片载入当前对话上下文;这一动作是强制步骤,不允许仅在文字里描述“已参考人脸”来替代。
3. 载入图片上下文后,默认调用 Codex 内置 `image_gen` 生成封面,提示词必须显式写明“以上一张已载入的人脸参考图作为身份锚点,保持同一本人脸”。
4. 只有当内置 `image_gen` 不可用、用户明确要求后台 API,或内置生图结果人脸稳定性不足时,再使用 `scripts/face_edit_cover.py`;它会把人脸图作为第一张 `--image` 真实上传到 OpenAI 图片编辑接口,并可附带风格参考图作为额外输入。
5. 默认模型用 `gpt-image-2`;如果用户明确要求 `gpt-image-1.5`,或需要该模型特有参数,再切换模型。
6. 若环境变量 `OPENAI_API_KEY` 缺失,只影响 `scripts/face_edit_cover.py` 的后台 API 调用;不影响通过 `view_image` 把人脸图载入当前对话上下文。
7. 第一轮依然必须产出 3 张候选封面;如果批量结果的人脸稳定性不足,就逐张重生成,直到 3 张都清晰出现并保留本人辨识度。
## 默认执行命令
当任务是“本人必须出镜”的封面图时,默认先执行对话上下文载入:
```text
调用 view_image,读取 /Users/a1/.codex/skills/cover-and-copy/assets/face/default-face.png
```
然后优先调用 Codex 内置 `image_gen`,并在提示词里把“已载入的人脸参考图”写成身份硬约束,直接生成 3 张候选封面。如果内置 `image_gen` 不可用、用户明确要求后台 API,或需要兜底修复人脸稳定性,再执行:
```bash
python /Users/a1/.codex/skills/cover-and-copy/scripts/face_edit_cover.py \
--prompt "这里放最终封面提示词" \
--style "读取自动匹配或用户指定的 references/cover-styles/<style>.md 后填写风格名称和视觉语法" \
--lighting "填写匹配风格文档里的光线要求" \
--palette "填写匹配风格文档里的色彩要求" \
--materials "填写匹配风格文档里的材质要求" \
--out-dir output/imagegen/cover_batch
```
兜底后台脚本说明:
- 该脚本默认 `--n 3`,会直接生成 3 张候选图。
- 它会自动载入 `assets/face/default-face.png` 作为真实输入图片,不允许只在提示词里写路径冒充参考图。
- 它会在最终 prompt 前强制追加身份锁定文本,要求每张图都清晰出现同一个本人脸。
- 如果调用者想生成单张,必须显式传 `--allow-single`;否则脚本直接失败。
## 成功封面公式
- 大标题压顶:标题占顶部主要空间,移动端一眼可读。标题可以有描边、投影、纹理和非金属厚度,但不能变成廉价金属特效。
- 人物是视觉锚点:脸清楚,身份像本人,和核心道具发生互动,不站着摆拍。提示词要优先突出人物与核心道具,确保主体比背景更醒目。
- 前景道具要夸张:手机、电脑、屏幕、产品、模型、角色物件或关键结果可以明显前置、放大、带透视,形成冲击。
- 背景有世界观:背景不是纯色棚拍,而是与主题强相关的场景、工作台、产品空间、片场、现实环境或概念世界。但背景复杂度应适度收敛,服务主体,不与人物和核心道具抢视觉重心。
- 信息有主次:标题最大,人物第二,道具第三,背景最后。少量箭头、圈注、对勾、叉号可以使用,但必须服务理解。
- 质感来自真实材料、场景光线、画面层级、字体纹理、道具关系和色彩控制,不靠默认蓝紫科技光、赛博霓虹、粒子爆炸或金属字堆叠。
## 参考资源
成功封面样例可作为版式质感参考,但不要照抄具体文字、构图或题材:
- `assets/style-references/web-design-cover.png`
- `assets/style-references/world-model-cover.png`
- `assets/style-references/ai-short-drama-cover.png`
按需读取以下 reference:
- `references/content-brief.md`:把短文案、脚本、大纲或文档提炼成封面创意简报。
- `references/cover-styles/`:独立封面风格文档目录。生成封面前必须从中自动匹配或读取用户指定的风格文档;新增、删除或修改风格时,只调整这个目录里的 `.md` 文件。
- `references/cover-prompt-templates.md`:生成 3 张竖版 `3:4` 封面的提示词结构。
- `references/horizontal-adaptation.md`:把竖版母版延展为同系列 `16:9` 和 `4:3` 横版封面。
- `references/copywriting.md`:根据脚本、大纲或内容简报生成符合个人风格的小红书标题和 200 字左右正文。
- `references/face-edit-workflow.md`:当任务要求本人出镜时,如何把默认人脸图真实上传给后台生图模型。
## 标题规则
以下规则用于封面图内标题。小红书发布标题另见 `references/copywriting.md`。
- 主标题必须是短关键词、名词或名词短语,优先 2 到 6 个汉字;当产品名或模型名是核心钩子时可以适当放宽。
- 默认 3 张竖版封面使用同一个主标题和同一个副标题。只有用户明确要求多标题测试,或内容包含明显不同选题方向时,才生成不同标题。
- 主标题要服务点击,不要做成普通说明句。避免“三步上线”“40 秒搞定”“不用代码”这类流程短句作为主标题。
- 副标题最多 1 条,越短越好,用来补充主标题无法承载的信息,例如“手机也能玩”“一键电影感”“可编辑工作流”。
## 人物规则
- 人脸图是身份参考,不是照片复刻模板。
- 必须保持本人脸部辨识度:脸型、五官比例、眉眼特征、年龄感、肤色范围和整体气质。
- 可以根据主题改变表情、服装、身体动作、手部动作、镜头角度、光线方向和所处场景。
- 禁止复制参考图背景、原始白衣服、原始手势、原始室内环境和原图构图,除非用户明确要求。
- 人物最好和核心道具发生互动,例如把手机递向镜头、指向结果、托举模型、展示屏幕、对比两种方案、进入主题场景。
## 画面禁区
- 不要假 logo、水印、二维码、不可读小字、复杂流程图、过多 UI 卡片、过多标签。
- 不要陌生人脸、发型大幅改变、五官跑偏、僵硬假笑、夸张大笑或严肃冷脸。
- 不要元素平均用力,不要把脚本的每个卖点都塞进画面。
- 不要默认使用蓝紫科技风、赛博霓虹、HUD、扫描线、数据流、光轨、能量环、粒子爆炸。
- 不要默认使用金属字、铬合金字、黄金字、银色镭射字、镜面电镀字或液态金属字。
View on GitHub