image-text-replace
图片上已有文字的内容替换(A → B),支持简单精准改字和复杂改字(花字/手写/多处/字符数变化)。当用户提到改字、替换文字、把 A 改成 B、修改文字、换个字、文字替换、改标题、改价格、改名字、改广告语时触发。
How do I install this agent skill?
npx skills add https://github.com/meitu/meitu-skills --skill image-text-replaceIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill is a functional tool for replacing text in images using the Meitu CLI. It accesses standard vendor-specific configuration files and executes commands to perform its primary task. It possesses a potential indirect prompt injection surface as it incorporates user input into image editing prompts.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
What does this agent skill do?
Image Text Replace
Overview
对已有图片做文字内容替换:简单精准改字(标准印刷体/单处/≤6 字符/字符数不变四条件全满足)与复杂改字(花字/手写体/风格化/多处/字符数变化)。
API Mapping
- 简单精准改字:简单改字路径。
- 复杂改字:优先
praline_pro,失败依次降级为praline_lite、mint_edit。
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
meitu --version≥ 2.0.6- 已用 CONFIG AKSK 跑过
meitu tools update - 当前 AKSK = EXEC,
MEITU_OPENAPI_TOOL_TASK_MODE=command - output_dir:openclaw.yaml →
./output/|else →$VISUAL/output/image-text-replace/;mkdir -p
Execute
触发信号 / 路由规则
核心维度:四条件判断(必须同时满足):
- 字体类型:标准印刷体(宋体/黑体/楷体/圆体/衬线体/无衬线体/等宽字体)
- 修改位置:只修改一处文字
- 字符长度:修改的文字字符数 ≤ 6
- 字符数恒等:原文字符数 = 修改后字符数
| 场景 | 判定 | 路由 |
|---|---|---|
| 四条件全满足 | 标准印刷体 + 单处 + ≤6 字符 + 字符数不变 | 简单改字路径 → praline_pro → praline_lite → mint_edit |
| 花字 / 手写 / 风格化 | 花体字、手写、风格化 | praline_pro → praline_lite → mint_edit |
| 多处修改 | 改多个地方 | praline_pro → praline_lite → mint_edit |
| 字符数 >6 或 字符数变化 | 长文本 / 3 字→5 字 | praline_pro → praline_lite → mint_edit |
参数定义
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
image_url | STRING | 是 | 图片地址。缺失 → 提示"请提供需要改字的图片" |
source_words | STRING | 条件必填 | 原文字内容。简单改字必填;复杂改字可从 prompt 自动提取 |
target_words | STRING | 条件必填 | 目标文字内容。简单改字必填 |
prompt | STRING | 否 | 改字描述;复杂改字时根据 source_words / target_words 自动生成英文改字指令 |
简单改字路径直接传 image_url、source_words 和 target_words;复杂改字使用 praline_pro、praline_lite 或 mint_edit,并根据 source_words/target_words 构造英文改字指令。
目标文字含中文时,prompt 中目标文字保持原样、不做翻译。
工具调用
meitu image-text-replace --image_url <url> --source_words "<原文>" --target_words "<新文>" --json --download-dir {output_dir} --skill_name skill_image-text-replace
错误降级
| 场景 | 处理方式 |
|---|---|
image_url 缺失 | 提示"请提供需要改字的图片" |
image_url 不可访问 | 直接返回图片链接无效错误,不重试 |
source_words / target_words 缺失 | 提示"请告诉我要把哪个文字改成什么" |
source_words 在图片中找不到 | 返回原图,告知未找到匹配文字 |
| 字符数改变 / 花字 / 多处 | 不走简单改字,直接使用 praline_pro |
| 简单改字路径调用失败 | 自动升级至 praline_pro |
praline_pro 调用失败 | 自动降级至 praline_lite |
praline_lite 调用失败 | 自动降级至 mint_edit |
mint_edit 调用失败 | 返回错误 |
| 用户一次要改多张图 | 提示每次处理一张 |
| 用户未提供字体信息 | 按标准印刷体判断,先试简单 API;失败自动升级 |
| 内容合规拦截 | 直接返回合规提示,不重试、不降级 |
Deliver
- 使用 Preflight 解析的 output_dir
- 从
downloaded_files[0].saved_path读取已下载文件路径 mv {downloaded_files[0].saved_path} {output_dir}/{YYYY-MM-DD}_{descriptive}_image-text-replace.{ext}
Output
- 格式:image
- 位置:项目 →
./output/,一次性 →$VISUAL/output/image-text-replace/
基线 Task ID
见 references/task-id-baseline.md 中对应行。
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/meitu/meitu-skills/image-text-replace">View image-text-replace on skillZs</a>