切换语言
切换主题

female-portrait-director:把人像提示词做成可复用 Skill

14
已实现风格路由
style-registry 当前注册的 route 数。
22
可锁定参数字段
parameter_schema 定义的字段,均带默认值。
4
输出段落
锁定参数、模块分析、最终提示词、负面约束。

"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 标准(一个带 namedescriptionSKILL.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。

  1. 抽参数 schema。把你每次都要改的东西列成字段,给每个字段一个默认值。想清楚哪些必须由用户决定,哪些可以兜底。
  2. 建注册表按需加载。如果有多种风格或任务类型,做一个轻量入口表,每次只加载命中的那一条规则文件,别全堆在一起。
  3. 写导演式扩写规则。规定怎么把字段扩写成连贯结果,而不是把字段重排成清单。
  4. 定安全边界与输出契约。把禁止项和输出结构写死,让每次调用都拿到可预期的格式。
  5. 打成 SKILL.md。写清 namedescription,描述要把触发场景和边界讲明白,方便 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

    步骤1: 抽参数 schema

    把每次都要改的内容列成字段,给每个字段一个默认值,想清楚哪些必须由用户决定、哪些可以兜底。
  2. 2

    步骤2: 建注册表按需加载

    有多种风格或任务类型时,做一个轻量入口表,每次只加载命中的那一条规则文件,避免全部规则同时进上下文。
  3. 3

    步骤3: 写导演式扩写规则

    规定怎么把字段扩写成连贯结果,而不是把字段重排成清单,给扩写和推理留出空间。
  4. 4

    步骤4: 定安全边界与输出契约

    把禁止项和输出结构写死,让每次调用都拿到可预期、可直接复制的格式。
  5. 5

    步骤5: 打成 SKILL.md

    写清 name 和 description,把触发场景和边界讲明白,方便 agent 显式或隐式匹配。

常见问题

female-portrait-director 是什么?
它是一个开源的 AI 人像提示词 Skill:输入少量结构化参数,它锁定你明确填的方向、按需只加载一条风格路由、把参数扩写成可直接复制的提示词并附负面约束。截至 2026-06 版本为 V1.4.1,MIT 许可。
怎么把 female-portrait-director 装进 Codex?
用 npx skills@latest add liyue-aigc/female-portrait-director -g -a codex -y 一键安装,或 git clone 到 Codex 的 skills 目录,重启后在对话里输入 $female-portrait-director 调用。
用 Skill 写人像提示词和手写一长段有什么区别?
手写是一次性文本,换场景就得重写,还容易风格串味。Skill 把输入收敛成字段、把规则沉淀成文件,复用性、一致性和可维护性都更好,调用者每次拿到同一种可预期结构。
参数锁定会限制创作自由吗?
不会。按项目 FAQ 的说法,锁定的是你明确选的方向,不是画面细节;系统仍会补充自然发生的瞬间、动作链和视线落点,只是不会擅自替换你填的字段。
怎么照着它的思路做一个自己的可复用提示词 Skill?
五步:抽参数 schema 并给默认值、建注册表按需加载、写导演式扩写规则、定安全边界和输出契约,最后打成带 name 和 description 的 SKILL.md,让 agent 能显式或隐式触发。
用它生成人像图,安全边界和合规要注意什么?
只生成明确成年的虚构人物,身份保真仅限本人或已授权成年人的参考图,禁止性化未成年、露骨裸露、非自愿和伪造身份内容,并遵守所在平台规则与当地法规。

12 分钟阅读 · 发布于: 2026年6月10日 · 修改于: 2026年6月15日

相关文章

BetterLink

想持续收到这个主题的更新?

你可以直接关注作者更新、订阅 RSS,或者继续沿着系列入口往下读,避免下次又回到搜索结果重新找。

关注公众号

评论

使用 GitHub 账号登录后即可评论