Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add meitu/meitu-skills --skill image-face-swapgit clone --depth 1 https://github.com/meitu/meitu-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/meitu/meitu-skills/image-face-swap)<a href="https://agentmods.dev/skills/meitu/meitu-skills/image-face-swap"><img src="https://agentmods.dev/badge/skills/meitu/meitu-skills/image-face-swap/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/meitu/meitu-skills/image-face-swap"><img src="https://agentmods.dev/badge/skills/meitu/meitu-skills/image-face-swap.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 6 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Privilege Escalation · line 5 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- high Privilege Escalation · line 7 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- high Privilege Escalation · line 13 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- high Privilege Escalation · line 15 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- high Privilege Escalation · line 21 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- medium Rogue Agent · line 25 Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.Fix: Remove any persistence mechanisms (cron jobs, startup scripts, state files). Skills should not maintain state across sessions without explicit user consent.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00126 | $0.01784 |
| Opus 5 | $0.00063 | $0.00892 |
| Sonnet 5 | $0.00025 | $0.00357 |
| Haiku 4.5 | $0.00013 | $0.00178 |
Grade A, and why
image-face-swap scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 137 lines — stays where its author put it; the contents beside it link to each section on GitHub.
图片换脸(image-face-swap)
Overview
双图换脸/换头合成,将源图人脸替换到目标场景图上。保留目标图的构图/身体/背景,自动肤色融合光影匹配;用于角色扮演、把自己的脸放到另一张图上、趣味合成。一次只换一张脸。
执行前应让用户清楚知道:本 Skill 会读取 Meitu 凭证、调用本地 meitu CLI、将两张人脸相关图片发送到 Meitu OpenAPI 处理,并把结果写入 ./output/ 或 $VISUAL/output/image-face-swap/。
API Mapping
- 双图换脸/换头合成:
image_face_swap
Dependencies
- meitu-cli:
>=2.0.6(npm install -g meitu-cli@latest) - 凭证:CONFIG AKSK →
meitu tools update;EXEC AKSK → 实际执行(见根CONFIG.md) - 环境变量:
MEITU_OPENAPI_TOOL_TASK_MODE=command
路径别名:
$VISUAL={OPENCLAW_HOME}/workspace/visual/
Core Workflow
Preflight → Execute → Deliver
Preflight
meitu --version≥ 2.0.6(否则npm install -g meitu-cli@latest)- 确认已跑过
meitu tools update(用 CONFIG AKSK) - 当前 AKSK = EXEC,且
MEITU_OPENAPI_TOOL_TASK_MODE=command - 解析 output_dir:openclaw.yaml →
./output/|else →$VISUAL/output/image-face-swap/;mkdir -p
Execute
触发信号 / 路由规则
核心判断维度:图片数量 + head/sence 角色分配。
| 场景 | 判定 | 路由 |
|---|---|---|
| 双图换脸 | 提供 2 张图,意图换脸 | image_face_swap,head/sence 按规则分配 |
决策顺序:
- 图片数量:不足 2 张 → 提示补图;超过 2 张 → 取前 2 张并告知
- 角色分配:
- 用户明确指定 → 按指定分配 head / sence
- 未区分 → 第 1 张 = head(人脸源),第 2 张 = sence(场景底图)
- "用 B 换到 A" → B=head(源),A=sence
- 唯一路由:调用
image_face_swap
单 API 工具:参数齐全即调用,失败重试 1 次后返回错误;不做跨工具兜底。侧脸/遮挡严重不阻断调用,但告知效果可能受限。
参数定义
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
head_image_url |
STRING | 是 | -- | 人脸源图 URL |
sence_image_url |
STRING | 是 | -- | 场景底图 URL(保留构图/身体/背景) |
prompt |
STRING | 是 | -- | 附加提示词。缺失 → 提示"请描述换脸效果要求" |
工具调用
meitu image-face-swap \
--skill_name skill_image-face-swap \
--head_image_url <head_url> \
--sence_image_url <sence_url> \
--prompt "<effect_description>" \
--json \
--download-dir {output_dir}
错误降级
| 场景 | 处理方式 |
|---|---|
| 图片不足 2 张 | 提示"请提供两张图片:一张人脸源图,一张目标场景图" |
| 图片 3+ 张 | 取前 2 张(第 1=head,第 2=sence),告知用户 |
head_image_url / sence_image_url 不可访问 |
返回图片链接无效错误,不重试 |
| 未检测到人脸(head) | 返回错误:人脸源图需包含清晰正脸 |
image_face_swap 调用失败 |
重试 1 次,仍失败返回错误 |
| 内容合规拦截 | 返回合规提示,不重试 |
| 侧脸 / 遮挡严重 | 不阻断调用,告知效果可能受限 |
| 视频换脸 | 拒绝,仅支持图片 |
| 多人同时换脸 | 本工具一次只换一张脸 |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 137 lines · 126 tokens per session scan A 3362b876d18c
image-face-swap is a skill published in the GitHub repository meitu/meitu-skills (32 stars, last pushed 14d ago), licensed MIT. It adds 126 tokens to every session and 1,784 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
webgl-holographic-foil
A self-contained WebGL2 hero: thin-film interference over a crushed-foil surface whose palette shifts with the viewing angle; move the cursor to tilt the film.
general-video
Author or edit a custom HyperFrames composition when no specialized workflow fits, or when BRIEF.md sets flow: companion. Use for longer or multi-scene pieces, brand and sizzle reels, montages, static loops, static title cards, footage remixes, and freeform builds. Use motion-graphics instead for a short unnarrated…
html-ppt-hermes-cyber-terminal
OpenDesign + BYOK: choosing and wiring your own model, hands-on — cost, quality, and the routing decision. Built as a decision-grade AI literacy deck for engineers, IT, applied-AI teams.
html-ppt-taste-brutalist
16:9 HTML deck in tactical-telemetry / CRT-terminal taste. Deactivated-CRT charcoal slides, white-phosphor monospace, hazard-red accent, scanline overlay, ASCII syntax, density over decoration. Distilled from Leonxlnx/taste-skill brutalist-skill (Tactical Telemetry mode).
chengfeng-check-updates
An environment manager for a video-editing system. It checks whether its skills and runtime—the software needed to run them—are installed and compatible.
diagnostic-stem-delivery
Audio production with diagnostic analysis, timecode parsing from documents, and verified export workflow.