npx skills add https://github.com/b-open-io/gemskills --skill team-group-photo通过先生成个人风格化肖像,再将它们合成到集体场景中,来生成团队合影。支持来自 169 种风格库的任何艺术风格。
不要跳过任何步骤。 对于未提供的任何信息,请提示用户。
向用户询问以下信息。在收集到所有必需输入之前,请勿继续:
如果用户未提供头像照片,请向他们索要。不要使用之前风格化/生成的图像作为源材料 - 始终从原始照片开始。
启动交互式风格选择器,以便用户为个人肖像选择风格:
STYLE_JSON=$(bun run ${CLAUDE_PLUGIN_ROOT}/skills/browsing-styles/scripts/preview_server.ts --pick --port=3456)
选择器会打开浏览器。用户点击一个风格,STYLE_JSON 将接收到:
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
{
"id": "sci-fi-pulp",
"shortName": "sfpl",
"name": "Sci-Fi Pulp",
"promptHints": "retro science fiction, chrome spaceships..."
}
如果用户已经指定了风格(例如"做成像素艺术"),则跳过选择器,直接使用 --style <id>。
对于每位团队成员,使用选定的风格生成个人肖像。使用 generate-image 脚本,并以每个人的原始头像照片作为输入:
bun run ${CLAUDE_PLUGIN_ROOT}/skills/generate-image/scripts/generate.ts \
"[风格名称] 风格的 [姓名] 肖像。从参考照片中精确转移相似度。[风格特定细节]。无文字。无边框。" \
--style <style-id> \
--input /path/to/original-headshot.png \
--size 1K \
--output /path/to/output/name-styled.png
为每位团队成员重复此步骤。在继续之前,向用户展示每个结果以获取批准。
询问用户:"对集体照片使用相同的风格,还是选择不同的风格?"
使用所有个人风格化肖像以及背景作为输入:
bun run ${CLAUDE_PLUGIN_ROOT}/skills/generate-image/scripts/generate.ts \
"[风格名称] 团队集体肖像。从左到右排列:[姓名1]、[姓名2]、[等等]。从每个输入参考中精确转移相似度。[背景说明]。统一的 [风格] 风格。无文字。无边框。" \
--style <style-id> \
--input /path/to/name1-styled.png \
--input /path/to/name2-styled.png \
--input /path/to/name3-styled.png \
--input /path/to/background.png \
--aspect 16:9 --size 2K \
--output /path/to/output/team-group.png
如果用户提供了背景图片,请将其作为 --input 包含在内,并在提示词中说"完全使用背景图片"。如果没有背景图片,则在提示词中描述场景。
对所有生成的输出运行 optimize-images 脚本。同时保存原始版本和优化后的副本:
IMAGES_DIR=/path/to/output bun run ${CLAUDE_PLUGIN_ROOT}/skills/optimize-images/scripts/optimize-images.ts
报告优化前后的文件大小。
不要将生成的图像读回上下文。 脚本仅输出文件路径。在继续下一步之前,请要求用户目视检查个人肖像和集体合成图。若要以编程方式检查,请先优化图像(通过步骤 6)。读取多个未压缩的肖像和集体图像会迅速耗尽上下文窗口。
不要在提示词中描述面部特征。 描述的面部特征越多,模型就越倾向于生成新面孔,而不是从输入图像中转移相似度。
--input 标志提供错误做法 - 描述面部特征:
1. **KURT** - 光头,棕色胡须,海军蓝西装,友好微笑
2. **LUKE** - 深色卷发,胡须,粉色衬衫
正确做法 - 简单的转移指令:
"从每个输入参考中精确转移相似度"
对于支持主题的网站,通过运行两次步骤 5 来生成两种变体:
相同的个人肖像,不同的背景输入。
--style <id> - 来自风格库的艺术风格(pixel-art、simpsons、studio-ghibli 等)--input <path> - 参考图像(最多总共 14 个)--aspect <ratio> - 1:1、16:9、9:16、4:3、3:4、21:9--size <1K|2K|4K> - 图像分辨率--output <path> - 输出文件路径--input 包含在内每周安装数
1
代码仓库
GitHub 星标数
2
首次出现
今天
安全审计
安装于
windsurf1
amp1
cline1
opencode1
cursor1
kimi-cli1
Generate team group portraits by first creating individual styled portraits, then compositing them into a group scene. Supports any art style from the 169 style library.
Do not skip steps. Prompt the user for anything not provided.
Ask the user for the following. Do not proceed until all required inputs are collected:
If the user hasn't provided headshots, ask for them. Do not use previously styled/generated images as source material - always start from original photos.
Launch the interactive style picker so the user can choose a style for individual portraits:
STYLE_JSON=$(bun run ${CLAUDE_PLUGIN_ROOT}/skills/browsing-styles/scripts/preview_server.ts --pick --port=3456)
The picker opens a browser. The user clicks a style and STYLE_JSON receives:
{
"id": "sci-fi-pulp",
"shortName": "sfpl",
"name": "Sci-Fi Pulp",
"promptHints": "retro science fiction, chrome spaceships..."
}
If the user already specified a style (e.g. "make it in pixel art"), skip the picker and use --style <id> directly.
For each team member, generate an individual portrait using the selected style. Use the generate-image script with each person's original headshot as input:
bun run ${CLAUDE_PLUGIN_ROOT}/skills/generate-image/scripts/generate.ts \
"[Style name] portrait of [Name]. Transfer exact likeness from the reference photo. [Style-specific details]. No text. No border." \
--style <style-id> \
--input /path/to/original-headshot.png \
--size 1K \
--output /path/to/output/name-styled.png
Repeat for each team member. Show each result to the user for approval before continuing.
Ask the user: "Use the same style for the group photo, or pick a different one?"
Use all individual styled portraits as inputs along with the background:
bun run ${CLAUDE_PLUGIN_ROOT}/skills/generate-image/scripts/generate.ts \
"[Style name] team group portrait. Arrange left to right: [Name1], [Name2], [etc]. Transfer exact likeness from each input reference. [Background instruction]. Uniform [style] style. No text. No border." \
--style <style-id> \
--input /path/to/name1-styled.png \
--input /path/to/name2-styled.png \
--input /path/to/name3-styled.png \
--input /path/to/background.png \
--aspect 16:9 --size 2K \
--output /path/to/output/team-group.png
If the user provided a background image, include it as --input and say "Use the background image exactly" in the prompt. If no background image, describe the scene in the prompt instead.
Run the optimize-images script on all generated outputs. Save both original and optimized copies:
IMAGES_DIR=/path/to/output bun run ${CLAUDE_PLUGIN_ROOT}/skills/optimize-images/scripts/optimize-images.ts
Report file sizes before and after optimization.
Do not read generated images back into context. Scripts output only file paths. Ask the user to visually inspect individual portraits and group composites before proceeding to the next step. To inspect programmatically, optimize images first (via Step 6). Reading multiple uncompressed portrait and group images will quickly exhaust the context window.
DO NOT describe faces in the prompt. The more facial features are described, the more the model GENERATES new faces instead of TRANSFERRING likeness from input images.
--input flagsBAD - Describing faces:
1. **KURT** - Bald head, brown beard, navy suit, friendly smile
2. **LUKE** - Dark curly hair, beard, pink shirt
GOOD - Simple transfer instruction:
"Transfer exact likeness from each input reference"
For theme-aware websites, generate both variants by running Step 5 twice:
Same individual portraits, different background input.
--style <id> - Art style from the style library (pixel-art, simpsons, studio-ghibli, etc.)--input <path> - Reference image (up to 14 total)--aspect <ratio> - 1:1, 16:9, 9:16, 4:3, 3:4, 21:9--size <1K|2K|4K> - Image resolution--output <path> - Output file path--inputWeekly Installs
1
Repository
GitHub Stars
2
First Seen
Today
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
windsurf1
amp1
cline1
opencode1
cursor1
kimi-cli1
AI Elements:基于shadcn/ui的AI原生应用组件库,快速构建对话界面
60,400 周安装