female-portrait-director:把人像提示词做成可复用 Skill
"female-portrait-director GitHub README 用于确认项目定位、版本 V1.4.1、作者、MIT 许可、14 风格、安装命令、输出格式和安全边界。"
"项目 SKILL.md 用于确认按需加载顺序、注册表分流、参数锁定规则、五段式融合提示词和独立代码块输出格式。"
"项目 parameter_schema.md 用于确认 22 个参数字段、默认值和 5 种输出模式。"
"OpenAI Codex Agent Skills 文档用于确认 SKILL.md 必填字段、渐进式披露(约 2% 上下文或 8000 字符)、显式 / 隐式调用与分发方式。"
调人像图的人都干过同一件事:上次好不容易凑出一段能用的提示词,这次换个场景又得从头重写。换成咖啡馆要补光线,换成古风要换服装词,一不小心把「清纯」和「港风」的关键词混到一起,出来的脸就开始串味。更头疼的是那些不可控的地方,明明写了 9:16,出来是方图;明明只想要时尚写真,模型自己加戏。
female-portrait-director 想解决的就是这个「提示词不可复用」的问题。它是一个开源的 AI 人像提示词导演 Skill:你给少量结构化参数,它锁定你明确填的方向,按需只加载一条风格路由,把参数扩写成一段连贯的、像被拍下来的提示词,并附上负面约束。它的价值不在于又给你一套万能提示词,而在于把提示词从一段每次重写的一次性文本,变成一个可复用、可维护、有边界的接口。它真正值得拆的,是背后四个工程支点,也是任何提示词都能照搬的部分。
先说清楚它和手写提示词差在哪
手写一长段人像提示词,问题不在于写得不够好,而在于它是一次性的。换个场景,你要手动改一半词;换个风格,你得记住哪些关键词不能共存;过两周回头看,自己都不知道当时为什么这么写。
把三种做法摆在一起对比,差异很直接:
| 维度 | 手写长提示词 | 提示词模板 | 提示词 Skill |
|---|---|---|---|
| 复用性 | 低,每次重写 | 中,复制后手改 | 高,填参数即可 |
| 一致性 | 看手感 | 看你改得细不细 | 由规则保证 |
| 可维护 | 难,散落各处 | 一般,模板会过期 | 好,集中改一处 |
| 风格隔离 | 容易串味 | 靠自觉 | 按需只加载一条 |
| 安全边界 | 每次靠记 | 写在注释里 | 写进规则强约束 |
| 上手成本 | 低 | 低 | 中,要先搭结构 |
模板已经比裸写好很多,这方面可以参考12 种可复用的提示词设计模式。但模板的天花板是「复制后手改」,它管不住风格隔离,也兜不住安全边界。Skill 是再往前一步:把输入收敛成字段,把规则沉淀成文件,让 AI 按规则跑。
30 秒认识 female-portrait-director
这个项目由李岳开发,MIT 许可,截至 2026 年 6 月版本是 V1.4.1,以 Codex Skill 的形态分发,遵循通用的 agent skill 标准(一个带 name 和 description 的 SKILL.md)。装好后在对话里输入 $female-portrait-director 就能调用。
它的工作方式可以用一个最小流程概括:你按模板填几个字段,它返回四段结构化结果。
输入(极简模板):
风格:清纯生活照
场景:咖啡馆靠窗位
服装:白色针织开衫 + 浅色内搭
气质:干净温柔
画幅:9:16
输出(四段):
1. 锁定参数:逐字段回显你填的内容
2. 模块分析:五官 / 身形 / 服装 / 场景 / 镜头 / 光线 / 滤镜怎么处理
3. 最终提示词:可直接复制的一段
4. 负面约束:要避免什么
注意输出里没有摘要式罗列。它把你给的几个字段扩写成一个具体画面,这正是它和模板的根本区别。项目自己的说法是:示例用来展示完成度,不是固定模板,每次都该重新选事件、动作和环境细节。
安装与第一次调用
npx 一键安装
最快的方式是 npx 装到全局 Codex skills:
npx skills@latest add liyue-aigc/female-portrait-director -g -a codex -y
以后更新用:
npx skills@latest update female-portrait-director -g -y
手动 git clone
也可以手动 clone 进 Codex 的 skills 目录。Windows PowerShell:
git clone https://github.com/liyue-aigc/female-portrait-director.git "$env:USERPROFILE\.codex\skills\female-portrait-director"
macOS 或 Linux:
git clone https://github.com/liyue-aigc/female-portrait-director.git "${CODEX_HOME:-$HOME/.codex}/skills/female-portrait-director"
装完重启 Codex 或开新对话,输入 $female-portrait-director 触发。这里有个机制值得知道:Codex 用的是渐进式披露(progressive disclosure),平时只把每个 skill 的名称、描述和路径放进上下文,初始列表大约占上下文窗口的 2%,窗口未知时按 8000 字符封顶;只有当它判断要用这个 skill,才会读完整的 SKILL.md。这意味着你装一堆 skill 也不会一直挤占上下文,这一点对理解它的内部设计很关键。具体版本和命令以仓库 README 为准。
拆解一:参数锁定,让你说的不被模型改写
人像提示词最常见的崩法,是模型把你明确要求的东西悄悄改掉。你写了画幅 9:16,它给你方图;你只想要时尚写真,它自作主张加滤镜。
female-portrait-director 的第一层设计就是参数锁定。它定义了 22 个参数字段,从写真风格、场景、服装、配色,到镜头、光线、画幅、平台用途,每个字段都有默认值。规则很硬:锁定用户明确填写的字段,只对缺失字段做合理补全,不替换方向。按项目 FAQ 的解释,锁定的是你选的方向,不是画面细节,所以它不会限制创作,系统照样补自然发生的瞬间、动作链和视线落点。
画幅这种硬控制还要再加一道。项目要求把画幅比例和像素尺寸放进最终提示词的第一句,用你填的确切值。原因就是上面那个老问题:放在中间或结尾,模型容易忽略;放首句当强约束,出图比例才稳。
迁移到你自己的场景,这一层等于给提示词定义了一个带默认值的输入 schema。哪些字段必须由用户说了算,哪些可以自动兜底,先想清楚,提示词才谈得上复用。
拆解二:按需路由,一次只加载一条风格
它支持 14 种风格,从清纯生活照、都市时尚、电商模特,到古风仙侠、港风、新中式。一个自然的疑问是:为什么不把这 14 种全塞进一个超长提示词,让模型自己挑?
因为塞在一起会串味。古风的关键词和港风的关键词同时在场,模型很容易把两边的特征混进一张脸。项目的做法是用一个轻量的风格注册表(style-registry)当唯一分流入口,每个请求只命中并读取一条风格路由文件,其余 13 条根本不进上下文。FAQ 里写得很直白:按需加载能减少无关规则进入上下文,降低风格串味和模板化,也提升处理效率。
这套思路和前面说的 Codex 渐进式披露是同一个工程思想,只是层级不同。Codex 在框架层只先加载 skill 的描述,命中才读全文;female-portrait-director 在 skill 内部又做了一次,只先看注册表,命中才读那一条风格。两层都在回答同一个问题:上下文是稀缺资源,别一次性全塞进去。
迁移点也清楚:当你的提示词要覆盖很多风格、场景或任务类型时,别堆一个巨无霸提示词,用注册表加按需加载的结构,让每次只加载相关的那一小块。
拆解三:模块化导演扩写,把参数变成画面
如果标准输出只是把你填的字段重新排列一遍,那它和模板没区别。female-portrait-director 强调标准输出不能写成摘要,因为摘要不足以稳定控制生图。
它把画面拆成 7 个视觉模块:五官、身形、服装、场景、镜头与姿态、光线、滤镜。标准详版的最终提示词必须正好五段,依次覆盖人物气质、时间切片与动作、身形与服装、场景与镜头、光线与滤镜。所谓导演式扩写,是用一个时间切片加一个小事件、一条动作链、一个视线落点和两三处选择性环境细节,把这些字段融成一个连贯瞬间,而不是把字段堆成清单。
举个直观的差别。摘要式会写「白色开衫,咖啡馆,柔光」。导演式会写成一个被拍下来的瞬间:靠窗的位置,她刚放下杯子,目光落在窗外,午后的光从左侧斜进来。后者能稳定控制生图,前者只能碰运气。
这一层提醒我们:可复用不等于模板填空。结构化是为了稳定,但要给扩写和推理留出空间,否则复用出来的全是千篇一律的图。
拆解四:安全边界与输出格式,可复用更要可控
把一套人像提示词做成谁都能调的 Skill,合规风险会被放大,所以边界必须写进规则,而不是每次靠人记。
female-portrait-director 的安全边界写得很明确:默认生成虚构的、明确成年的女性;身份保真只允许用本人或已授权成年人的参考图;禁止性化未成年、露骨裸露、非自愿图像、欺骗性身份等用途。即便是偏曲线的风格,也要求避免暴露隐私部位和年龄模糊的画面。这些是项目自带的责任使用约束,你在实际生成时还要遵守所在平台规则和当地法规。
输出格式也是一种可控性。它要求最终提示词和负面约束各自用独立的、带 text 标签的代码块,标题留在代码块外,方便直接复制,不把分析混进可复制内容。这个细节看着小,但对复用很重要:调用者拿到的永远是同一种可预期的结构。
照着做:把你的提示词收敛成 Skill 的 5 步
这套思路不只适用于人像。任何你反复重写的提示词,都可以照下面五步收敛成一个 Skill。
- 抽参数 schema。把你每次都要改的东西列成字段,给每个字段一个默认值。想清楚哪些必须由用户决定,哪些可以兜底。
- 建注册表按需加载。如果有多种风格或任务类型,做一个轻量入口表,每次只加载命中的那一条规则文件,别全堆在一起。
- 写导演式扩写规则。规定怎么把字段扩写成连贯结果,而不是把字段重排成清单。
- 定安全边界与输出契约。把禁止项和输出结构写死,让每次调用都拿到可预期的格式。
- 打成 SKILL.md。写清
name和description,描述要把触发场景和边界讲明白,方便 agent 隐式匹配。
一个最小的 SKILL.md 骨架
按你的领域替换内容即可,这是自写示例,不是项目原文:
---
name: my-prompt-skill
description: 当用户需要 X 类提示词时触发;输入少量字段,输出结构化结果与负面约束。
---
# 流程
1. 读取字段,锁定用户明确填写的项,缺失项用默认值补全。
2. 从注册表选一条匹配的风格/任务路由,只加载这一条。
3. 按导演式规则扩写成连贯结果,不要罗列字段。
4. 输出最终结果和负面约束,各用独立代码块。
落地时几个常见坑,对应修法如下:
| 现象 | 原因 | 修法 |
|---|---|---|
| 用户填的字段被改掉 | 没做参数锁定 | 显式回显锁定结果,硬控制进首句 |
| 风格串味 | 多条规则同时进上下文 | 注册表分流,一次只加载一条 |
| 输出变成字段清单 | 缺导演式扩写规则 | 规定扩写成连贯画面或结果 |
| 装了但不触发 | description 太泛 | 把触发场景和关键词写进 description |
它适合谁,不适合谁
不是所有需求都值得做成 Skill。给个判断:
| 你的情况 | 建议 |
|---|---|
| 经常出同类人像图,想稳定复用 | 直接装现成 Skill |
| 有自己的领域提示词、反复重写 | 照这套思路自建 |
| 只是临时出一两张图 | 不用做 Skill,手写更快 |
| 涉及真人或参考图 | 先确认授权和合规,再考虑自动化 |
female-portrait-director 真正可借鉴的不是它的 14 种风格,而是它把提示词当工程对象来管:输入有 schema,规则按需加载,扩写有方法,边界写进文件。想了解 Skill 这个机制本身,可以先看 Claude Code 的 Skill 功能;想看另一个把重复创作做成流水线的案例,可以看 guizang-social-card-skill;想补人像提示词本身的写法,参考 Stable Diffusion Prompt 模板指南。
结论
female-portrait-director 给人像提示词做了一件大多数人没做的事:把它从一段每次重写的文本,变成一个有输入 schema、按需路由、导演式扩写和明确边界的接口。你不一定要用它的人像功能,但它的四个工程支点可以直接搬到任何你反复调的提示词上。下一步很简单:挑一个你每周都要重写两三遍的提示词,按那 5 步把它收敛成一个 SKILL.md,跑两次看看是不是比手写稳。
把你的提示词收敛成一个可复用 Skill
参照 female-portrait-director 的设计,把反复重写的提示词工程化成一个 Skill。
⏱️ 预计耗时: 1 day
- 1
步骤1: 抽参数 schema
把每次都要改的内容列成字段,给每个字段一个默认值,想清楚哪些必须由用户决定、哪些可以兜底。 - 2
步骤2: 建注册表按需加载
有多种风格或任务类型时,做一个轻量入口表,每次只加载命中的那一条规则文件,避免全部规则同时进上下文。 - 3
步骤3: 写导演式扩写规则
规定怎么把字段扩写成连贯结果,而不是把字段重排成清单,给扩写和推理留出空间。 - 4
步骤4: 定安全边界与输出契约
把禁止项和输出结构写死,让每次调用都拿到可预期、可直接复制的格式。 - 5
步骤5: 打成 SKILL.md
写清 name 和 description,把触发场景和边界讲明白,方便 agent 显式或隐式匹配。
常见问题
female-portrait-director 是什么?
怎么把 female-portrait-director 装进 Codex?
用 Skill 写人像提示词和手写一长段有什么区别?
参数锁定会限制创作自由吗?
怎么照着它的思路做一个自己的可复用提示词 Skill?
用它生成人像图,安全边界和合规要注意什么?
12 分钟阅读 · 发布于: 2026年6月10日 · 修改于: 2026年6月15日
AI Agent 工具箱
如果你是从搜索进入这篇文章,建议顺手补上上一篇或继续下一篇,这样更容易把同一主题读完整。
上一篇
guizang-social-card-skill:把小红书图文和公众号封面做成流水线
guizang-social-card-skill 怎么用?本文结合 GitHub README 和 Claude Code / Codex Skills 文档,解释安装、版式、主题、渲染、授权和 QA 清单。
第 2 / 4 篇
下一篇
ADHD:用并行发散推理治 Coding Agent 的过早收敛
ADHD 是建在 Claude 与 Codex Agent SDK 上的开源 skill,用并行隔离发散加单独 critic 剪枝来对抗 Coding Agent 的过早收敛。这里梳理它和 Chain-of-Thought、Tree-of-Thought 的结构差异、适用决策点、安装触发方式和单次运行的成本量级。
第 4 / 4 篇
相关文章
Continuum 与 agent runtime 选型:从 notebook 到生产,该看哪 7 个能力
Continuum 与 agent runtime 选型:从 notebook 到生产,该看哪 7 个能力
Mnemo 本地记忆层:给 Ollama 和自建 LLM 留一份可迁移记忆
Mnemo 本地记忆层:给 Ollama 和自建 LLM 留一份可迁移记忆
vibecode-pro-max-kit:给 AI 编程项目补上规格、记忆和多 Agent 协作
评论
使用 GitHub 账号登录后即可评论