# Image Outfit Swap

> AI 换装，保留人物面部和体型只替换衣物，支持文字描述或服装参考图。仅在用户明确要求对已有单人人物图片换装、试穿、换衣服或替换服饰，并已提供人物图片时触发。

- **Type:** Skill
- **Install:** `agentstack add skill-meitu-meitu-skills-image-outfit-swap`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [meitu](https://agentstack.voostack.com/s/meitu)
- **Installs:** 0
- **Category:** [Content & Media](https://agentstack.voostack.com/c/content-and-media)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [meitu](https://github.com/meitu)
- **Source:** https://github.com/meitu/meitu-skills/tree/main/skills/image-outfit-swap

## Install

```sh
agentstack add skill-meitu-meitu-skills-image-outfit-swap
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Image Outfit Swap

## Overview

对已有人物图片做 AI 换装，保留人物面部 / 体型 / 形象只替换衣物，支持文字描述目标服装或上传服装参考图（人物图+服装图通过 image_list 传入）。简单颜色修改（如"把裙子改成红色"）也属于本工具。

执行前应让用户清楚知道：本 Skill 会读取 Meitu 凭证、调用本地 `meitu` CLI、将用户提供的人物图片、可选服装参考图与换装描述发送到 Meitu OpenAPI 处理，并把结果写入 `./output/` 或 `$VISUAL/output/image-outfit-swap/`。涉及人像照片时，应确认对照片中人物具备处理授权。

## API Mapping

- 换装主路径：`image_praline_edit_v2`
- 换装降级：`image_praline_edit_2`
- 工具内兜底：`image_mint_edit`
- model 映射：`auto`（默认）/`praline_pro`→v2 / `praline_lite`→edit_2 / `mint_edit`→mint

## Dependencies

- **meitu-cli**: `>=2.0.6`
- **凭证**：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

1. `meitu --version` ≥ 2.0.6
2. 已用 CONFIG AKSK 跑过 `meitu tools update`
3. 当前 AKSK = EXEC，`MEITU_OPENAPI_TOOL_TASK_MODE=command`
4. output_dir：openclaw.yaml → `./output/` ｜else → `$VISUAL/output/image-outfit-swap/`；`mkdir -p {output_dir}`

### Execute

**触发信号 / 路由规则**

| 场景 | 判定条件 | 路由 |
|------|----------|------|
| 换装 / 换衣服 | 换装、换衣服、试穿、穿上、改成 xxx 服装 | `image_praline_edit_v2` → `image_praline_edit_2` → `image_mint_edit` |
| 虚拟试穿（有服装图） | 用户上传了 clothes_image_url | `image_praline_edit_v2`（image_list=[人物图, 服装图]） |
| 简单颜色修改（衣服） | 把裙子改成红色 | `image_praline_edit_v2` |

**参数定义**

| 参数 | 类型 | 必填 | 说明 |
|------|------|------|------|
| `image_url` | STRING | 是 | 人物图片地址。缺失 → 提示"请提供需要换装的人物图片" |
| `prompt` | STRING | 是 | 目标服装描述。缺失 → 提示"请描述目标服装款式" |
| `clothes_image_url` | STRING | 否 | 服装参考图地址。提供时与 image_url 一起通过 image_list 传入 `image_praline_edit_v2` |

API 映射说明：

- `image_praline_edit_v2`（主路径）：`prompt` 自动扩写为英文换装指令（如 `"Change the person's outfit to a white linen shirt, keep face and body unchanged"`）
- `image_praline_edit_2`（降级）：`prompt` 直传
- `image_mint_edit`（兜底）：`prompt` 直传

**工具调用**

```bash
meitu image-outfit-swap --image_url  --prompt "" --json --download-dir {output_dir} --skill_name skill_image-outfit-swap
```

```bash
# 带服装参考图
meitu image-outfit-swap --image_url  --clothes_image_url  --prompt "" --json --download-dir {output_dir} --skill_name skill_image-outfit-swap
```

**错误降级**

| 场景 | 处理方式 |
|------|------|
| `image_url` 缺失 | 提示"请提供需要换装的人物图片"，不调用 API |
| `image_url` 不可访问 | 直接返回图片链接无效错误，不重试 |
| `prompt` 缺失 | 提示"请描述目标服装款式" |
| `prompt` 过于模糊 | 提示细化描述（款式 / 颜色 / 材质 / 风格） |
| 图片无明显人物 | 返回错误，提示需包含清晰人物 |
| `image_praline_edit_v2` 调用失败 | 自动降级至 `image_praline_edit_2` |
| `image_praline_edit_2` 调用失败 | 自动降级至 `image_mint_edit` |
| `image_mint_edit` 调用失败 | 返回错误 |
| 内容合规拦截 | 直接返回合规提示，不重试、不降级 |

### Deliver

- 使用 Preflight 解析的 output_dir
- 从 `downloaded_files[0].saved_path` 读取已下载文件路径
- `mv {downloaded_files[0].saved_path} {output_dir}/{YYYY-MM-DD}_{descriptive}_image-outfit-swap.{ext}`

## Output

- **格式**：image（PNG/JPG 由 API 决定）
- **位置**：项目 → `./output/`，一次性 → `$VISUAL/output/image-outfit-swap/`

## 基线 Task ID

见 `references/task-id-baseline.md` 中对应行。

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [meitu](https://github.com/meitu)
- **Source:** [meitu/meitu-skills](https://github.com/meitu/meitu-skills)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-meitu-meitu-skills-image-outfit-swap
- Seller: https://agentstack.voostack.com/s/meitu
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
