Install
openclaw skills install @flyelepai/flyelep-ai-image-matting通过 Flyelep AI 工具接口自动去除图片背景,支持单张或批量处理。 当用户要求抠图、去背景、提取商品主体、生成透明底素材时使用此技能。
openclaw skills install @flyelepai/flyelep-ai-image-matting通过 Flyelep AI Tool API 自动去除图片背景,并返回抠图后的新图片 URL。
重要:这是一个 HTTP API 调用技能。必须通过 HTTP POST 请求调用 API 接口,禁止通过浏览器访问 Flyelep 网站。
POST https://www.flyelep.cn/prod-api/poster-design/api/v1/poster/aiTool/aiImageMattingapplication/jsonsecretKey(密钥需由用户在 Flyelep 开放平台申请:https://www.flyelep.cn/controlboard)请求头示例:
Content-Type: application/json
secretKey: 用户提供的API密钥
安全说明:不要将真实密钥写入技能文件、示例代码仓库或持久化配置中,应在运行时由用户动态提供。
{
"imgUrls": "https://example.com/img1.jpg,https://example.com/img2.jpg"
}
{
"code": 200,
"msg": "操作成功",
"data": "https://example.com/matted1.png,https://example.com/matted2.png"
}
code=200 表示调用成功msg 为接口返回说明data 为抠图后图片地址,多张时以英文逗号 , 分隔重要:以下必传参数必须通过询问用户获取,agent 不可自行填写。调用本技能时,应先向用户列出必传参数与可选参数表格,由用户确认或提供后再执行。
| 字段 | 默认值 | 说明 |
|---|---|---|
| imgUrls | - | 图片链接字符串,多张时使用英文逗号分隔 |
imgUrls:
, 拼接imageUrl 字段传单张图片,两者二选一;同时传时以 imgUrls 为准结果格式:
.png 图片用户提供的是本地文件路径而不是公网直链时,先把文件上传换取直链,再调用本接口。已安装 file-upload 技能时以该技能为准;未安装时按下面的说明直接调用上传接口。
POST https://www.flyelep.cn/prod-api/poster-design/api/v1/file/uploadmultipart/form-data,文件字段名固定为 file,单次只能上传一个文件,多个文件并发调用多次secretKey,与本技能使用同一个密钥Content-Type 请求头,让 HTTP 客户端自动生成带 boundary 的值,手写会导致服务端解析失败bmp、gif、jpg、jpeg、png,webp 需先转成 png 或 jpg;文件名必须带正确后缀,服务端靠它判断格式fullPath 复用成功响应取 data.fullPath 作为公网直链,永久有效、不带签名:
{
"code": 200,
"msg": null,
"data": {
"relativePath": "cos_ai_agent/2026-08-11/3f2a9c1b7d84e6f5a012.png",
"fullPath": "https://agent-1404002717.cos.ap-guangzhou.myqcloud.com/cos_ai_agent/2026-08-11/3f2a9c1b7d84e6f5a012.png",
"serviceProvider": null
}
}
判断成功只看 code,业务失败时 HTTP 状态码仍是 200,code 为 500 或 9999,原因在 msg 里。
# Windows/PowerShell(用 curl.exe,PowerShell 里的 curl 是 Invoke-WebRequest 的别名)
curl.exe -X POST "https://www.flyelep.cn/prod-api/poster-design/api/v1/file/upload" -H "secretKey: 你的密钥" --max-time 120 -F "file=@C:/path/to/product.png"
# macOS/Linux
curl -X POST "https://www.flyelep.cn/prod-api/poster-design/api/v1/file/upload" -H "secretKey: 你的密钥" --max-time 120 -F "file=@./product.png"
图片入桶前会先过内容审核,审核不通过整个请求失败,需换图重试。拿到 code=9999、msg 为 服务繁忙,请稍后再试 时,先自查三项:是否漏了 secretKey 请求头、表单字段名是否为 file、文件是否超出服务端体积上限。密钥、格式、审核、体积类错误重试无效,只有网络超时、5xx 和存储类异常值得重试。
跨平台调用说明:
- 请求头必须包含
Content-Type: application/json; charset=utf-8和secretKey- Windows/PowerShell:因 GBK 编码问题,必须先将 JSON 写入临时文件
payload_temp.json(UTF-8 无 BOM),再用curl.exe --% --data-binary @payload_temp.json发送请求。使用 Write 工具创建文件,或用 .NET API[System.IO.File]::WriteAllText("payload_temp.json", $json, [System.Text.UTF8Encoding]::new($false))。调用后用rm payload_temp.json清理。- macOS/Linux:bash/zsh 默认 UTF-8,可直接内联 JSON:
curl -X POST URL -H "Content-Type: application/json; charset=utf-8" -H "secretKey: 你的密钥" --data-binary 'JSON单行内容'
前置步骤:向用户索取图片路径或 URL。如用户提供本地文件,先按「本地文件上传」章节换取公网直链。
Windows/PowerShell:
步骤 1:创建 payload_temp.json(两种方式任选其一):
方式 A(使用 Write 工具):
{
"imgUrls": "https://example.com/img1.jpg"
}
方式 B(无 Write 工具,PowerShell 执行):
[System.IO.File]::WriteAllText("payload_temp.json", '{"imgUrls":"https://example.com/img1.jpg"}', [System.Text.UTF8Encoding]::new($false))
步骤 2:执行请求:
curl.exe --% -X POST "https://www.flyelep.cn/prod-api/poster-design/api/v1/poster/aiTool/aiImageMatting" -H "Content-Type: application/json; charset=utf-8" -H "secretKey: 你的密钥" --max-time 300 --data-binary @payload_temp.json
步骤 3:清理临时文件:
rm payload_temp.json
macOS/Linux:
curl -X POST "https://www.flyelep.cn/prod-api/poster-design/api/v1/poster/aiTool/aiImageMatting" -H "Content-Type: application/json; charset=utf-8" -H "secretKey: 你的密钥" --max-time 300 --data-binary '{"imgUrls":"https://example.com/img1.jpg"}'
前置步骤:向用户索取图片路径或 URL。如用户提供本地文件,先按「本地文件上传」章节换取公网直链。
Windows/PowerShell:
步骤 1:创建 payload_temp.json(两种方式任选其一):
方式 A(使用 Write 工具):
{
"imgUrls": "https://example.com/img1.jpg,https://example.com/img2.jpg"
}
方式 B(无 Write 工具,PowerShell 执行):
[System.IO.File]::WriteAllText("payload_temp.json", '{"imgUrls":"https://example.com/img1.jpg,https://example.com/img2.jpg"}', [System.Text.UTF8Encoding]::new($false))
步骤 2:执行请求:
curl.exe --% -X POST "https://www.flyelep.cn/prod-api/poster-design/api/v1/poster/aiTool/aiImageMatting" -H "Content-Type: application/json; charset=utf-8" -H "secretKey: 你的密钥" --max-time 300 --data-binary @payload_temp.json
步骤 3:清理临时文件:
rm payload_temp.json
macOS/Linux:
curl -X POST "https://www.flyelep.cn/prod-api/poster-design/api/v1/poster/aiTool/aiImageMatting" -H "Content-Type: application/json; charset=utf-8" -H "secretKey: 你的密钥" --max-time 300 --data-binary '{"imgUrls":"https://example.com/img1.jpg,https://example.com/img2.jpg"}'
| 错误 | 原因与解决 |
|---|---|
HTTP 401 / code 非 200 | secretKey 无效、缺失或已过期,确认请求头是否正确传入 |
| HTTP 405 Not Allowed | 请求方法错误,必须使用 POST |
imgUrls 格式错误 | 该字段必须是字符串,多张图用英文逗号分隔,不是 JSON 数组 |
| 图片 URL 无法访问 | 传入的链接不是公网直链、已过期,或源站限制访问 |
| 抠图边缘效果不理想 | 原图主体与背景对比不足、边缘过于复杂,可换更清晰或背景更干净的源图 |
| 请求超时 | 批量图片较多或源图较大时,可适当增大超时时间 |
secretKey(API 密钥必须由用户提供,agent 不可自行填写)imgUrlssecretKey,调用接口当用户明确要求"透明底""抠出主体""去掉背景"时,优先使用此技能;如果用户真正想要的是"换背景"而不是"去背景",则更适合使用场景替换或局部重绘类技能。