{"id":"71a55b94-327f-47dd-98b9-9b0622926bdc","entityType":"agent","slug":"clawhub-howerlin0329-aicraft-skill","name":"爱创AI-电商专用AI创作智能体工具_AI图片生成_AI视频生成_AI电商详情图生成","canonicalUrl":"https://www.xpersona.co/agent/clawhub-howerlin0329-aicraft-skill","canonicalPath":"/agent/clawhub-howerlin0329-aicraft-skill","generatedAt":"2026-10-11T01:47:26.950Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-10T23:17:16.024Z","emptyReason":null},"description":"爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能： - 电商作图、商品图生成、主图套图、详情图制作 - AI生成图片、AI绘画、AI作图、Agent模式智能生成 - AI试衣、AI试鞋、AI试戴、虚拟试穿 - 商品精修、去水印、商品换色、服装去皱 -... Skill: 爱创AI-电商专用AI创作智能体工具_AI图片生成_AI视频生成_AI电商详情图生成 Owner: howerlin0329 Summary: 爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能： - 电商作图、商品图生成、主图套图、详情图制作 - AI生成图片、AI绘画、AI作图、Agent模式智能生成 - AI试衣、AI试鞋、AI试戴、虚拟试穿 - 商品精修、去水印、商品换色、服装去皱 -... Tags: latest:1.0.8 Version history: v1.0.8 | 2026-06-09T12:59:33.888Z | user aicraft-skill 1.0.8 更新日志 - 新增图片展示规范，所有生成图片默认使用缩略图展示，附带原图下载链接 - 详细说明缩略图的URL获取方法和展示方式，强调不要直接展示原图 - 补充上传图片返","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.2K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s176emez40f3fcwfj4xc2zcqzh8454jg:aicraft-skill","sourceUrl":"https://clawhub.ai/howerlin0329/aicraft-skill","homepage":"https://clawhub.ai/howerlin0329/skills/aicraft-skill","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/howerlin0329/aicraft-skill","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/howerlin0329/skills/aicraft-skill","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":62,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能： - 电商作图、商品图生成、主图套图、详情图制作 - AI生成图片、AI绘画、AI作图、Agent模式智能生成 - AI试衣、AI试鞋、AI试戴、虚拟试穿 - 商品精修、去水印、商品换色、服装去皱 -... "},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T23:17:16.024Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T23:17:16.024Z","emptyReason":null},"stars":null,"forks":null,"downloads":1232,"packageName":null,"latestVersion":"1.0.8","tractionLabel":"1.2K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T23:17:16.015Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T23:17:16.024Z","lastCrawledAt":"2026-10-10T23:17:16.015Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T23:17:16.015Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.8","createdAt":"2026-06-09T12:59:33.888Z","changelog":"aicraft-skill 1.0.8 更新日志 - 新增图片展示规范，所有生成图片默认使用缩略图展示，附带原图下载链接 - 详细说明缩略图的URL获取方法和展示方式，强调不要直接展示原图 - 补充上传图片返回相对路径时的处理办法 - 提供 Agent 模式下 SSE 流式接口的完整 Python 实现与解析细节 - 调整和优化文档结构，移除 skill-card.md，新增 _meta.json","fileCount":6,"zipByteSize":19340},{"version":"1.0.7","createdAt":"2026-06-09T12:04:03.067Z","changelog":"- Removed the file skill-card.md. - Documentation now states：Agent模式仅能使用流式接口 Task/GenerateAgentImageStream，不支持 Task/Publish。 - No functional or API changes; update is documentation-only.","fileCount":6,"zipByteSize":16224},{"version":"1.0.6","createdAt":"2026-06-09T11:15:12.508Z","changelog":"aicraft-skill 1.0.6 - Removed the file skill-card.md from the project. - No changes to functionality or user experience. - All core features and documentation remain unchanged.","fileCount":6,"zipByteSize":16419},{"version":"1.0.5","createdAt":"2026-06-09T08:33:58.715Z","changelog":"aicraft-skill 1.0.5 - Removed the file skill-card.md. - No functional changes or feature updates included in this release.","fileCount":6,"zipByteSize":16135},{"version":"1.0.4","createdAt":"2026-06-09T07:36:46.230Z","changelog":"aicraft-skill 1.0.4 - 简化了 token 获取流程，用户现在可在 https://www.51aic.com/open-claw?source=agents 页面直接复制 token，无需开发者工具操作。 - 更新认证引导文档，移除了原步骤（利用浏览器 F12 控制台手动查找 cookie）相关内容。 - 移除 skill-card.md 文件，保留精简后的文档说明。","fileCount":6,"zipByteSize":16155},{"version":"1.0.3","createdAt":"2026-05-21T06:31:35.156Z","changelog":"aicraft-skill 1.0.3 - 明确要求：用户如未指定具体功能，优先引导使用 Agent 模式（AI智能体辅助生成），体验更自然智能 - 说明 Agent 模式是平台前端的默认首屏模式，API上等价于自由创作（sceneMode: free_creation），并强调推荐 - 其余功能、API和配置无变动 - 文档描述更清晰，便于理解图片生成模式推荐使用顺序","fileCount":6,"zipByteSize":16248},{"version":"1.0.2","createdAt":"2026-05-11T03:28:08.038Z","changelog":"**aicraft-skill v1.0.2 — 重大更新：支持AI详情图生成、风格复刻、多场景资产管理及18种作图能力。** - 新增 AI详情图自动生成能力（支持模块规划、多语言、流转状态）。 - 新增风格复刻功能，支持批量生成与参考风格。 - 支持图片/视频/详情图/风格复刻的资产管理、查询、批量删除。 - 各类AI作图模式扩展至18种，新增Agent模式智能生成、风格复刻、详情图等。 - 支持多种比例、多选图片上传与丰富的参数配置。 - 文档与说明全面完善，明确积分规则与业务流转逻辑。","fileCount":5,"zipByteSize":14479},{"version":"1.0.1","createdAt":"2026-05-06T03:48:50.362Z","changelog":"aicraft-skill 1.0.1 - 更新平台链接，加上 source=agents 标记，便于渠道追踪。 - 文档中将“Claude”对话统一为“AI”对话，更加通用。 - 明确历史记录页面路径，加入 source=agents 以便用户跳转后统计。 - 支付接口示例优化：PowerShell 示例中 body 编码方式与 Linux 保持一致，更清晰直观。 - 其余功能、API 说明、调用流程保持一致。","fileCount":5,"zipByteSize":11219}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s176emez40f3fcwfj4xc2zcqzh8454jg:aicraft-skill","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-howerlin0329-aicraft-skill/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-howerlin0329-aicraft-skill/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-howerlin0329-aicraft-skill/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-howerlin0329-aicraft-skill/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-howerlin0329-aicraft-skill/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-howerlin0329-aicraft-skill/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-11T01:47:26.947Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-howerlin0329-aicraft-skill/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-howerlin0329-aicraft-skill/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-howerlin0329-aicraft-skill/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-howerlin0329-aicraft-skill/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-10T23:17:16.024Z","emptyReason":null},"readme":"Skill: 爱创AI-电商专用AI创作智能体工具_AI图片生成_AI视频生成_AI电商详情图生成\n\nOwner: howerlin0329\n\nSummary: 爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能： - 电商作图、商品图生成、主图套图、详情图制作 - AI生成图片、AI绘画、AI作图、Agent模式智能生成 - AI试衣、AI试鞋、AI试戴、虚拟试穿 - 商品精修、去水印、商品换色、服装去皱 -...\n\nTags: latest:1.0.8\n\nVersion history:\n\nv1.0.8 | 2026-06-09T12:59:33.888Z | user\n\naicraft-skill 1.0.8 更新日志\n\n- 新增图片展示规范，所有生成图片默认使用缩略图展示，附带原图下载链接\n- 详细说明缩略图的URL获取方法和展示方式，强调不要直接展示原图\n- 补充上传图片返回相对路径时的处理办法\n- 提供 Agent 模式下 SSE 流式接口的完整 Python 实现与解析细节\n- 调整和优化文档结构，移除 skill-card.md，新增 _meta.json\n\nv1.0.7 | 2026-06-09T12:04:03.067Z | user\n\n- Removed the file skill-card.md.\n- Documentation now states：Agent模式仅能使用流式接口 Task/GenerateAgentImageStream，不支持 Task/Publish。\n- No functional or API changes; update is documentation-only.\n\nv1.0.6 | 2026-06-09T11:15:12.508Z | user\n\naicraft-skill 1.0.6\n\n- Removed the file skill-card.md from the project.\n- No changes to functionality or user experience.\n- All core features and documentation remain unchanged.\n\nv1.0.5 | 2026-06-09T08:33:58.715Z | user\n\naicraft-skill 1.0.5\n\n- Removed the file skill-card.md.\n- No functional changes or feature updates included in this release.\n\nv1.0.4 | 2026-06-09T07:36:46.230Z | auto\n\naicraft-skill 1.0.4\n\n- 简化了 token 获取流程，用户现在可在 https://www.51aic.com/open-claw?source=agents 页面直接复制 token，无需开发者工具操作。\n- 更新认证引导文档，移除了原步骤（利用浏览器 F12 控制台手动查找 cookie）相关内容。\n- 移除 skill-card.md 文件，保留精简后的文档说明。\n\nv1.0.3 | 2026-05-21T06:31:35.156Z | user\n\naicraft-skill 1.0.3\n\n- 明确要求：用户如未指定具体功能，优先引导使用 Agent 模式（AI智能体辅助生成），体验更自然智能\n- 说明 Agent 模式是平台前端的默认首屏模式，API上等价于自由创作（sceneMode: free_creation），并强调推荐\n- 其余功能、API和配置无变动\n- 文档描述更清晰，便于理解图片生成模式推荐使用顺序\n\nv1.0.2 | 2026-05-11T03:28:08.038Z | user\n\n**aicraft-skill v1.0.2 — 重大更新：支持AI详情图生成、风格复刻、多场景资产管理及18种作图能力。**\n\n- 新增 AI详情图自动生成能力（支持模块规划、多语言、流转状态）。\n- 新增风格复刻功能，支持批量生成与参考风格。\n- 支持图片/视频/详情图/风格复刻的资产管理、查询、批量删除。\n- 各类AI作图模式扩展至18种，新增Agent模式智能生成、风格复刻、详情图等。\n- 支持多种比例、多选图片上传与丰富的参数配置。\n- 文档与说明全面完善，明确积分规则与业务流转逻辑。\n\nv1.0.1 | 2026-05-06T03:48:50.362Z | user\n\naicraft-skill 1.0.1\n\n- 更新平台链接，加上 source=agents 标记，便于渠道追踪。\n- 文档中将“Claude”对话统一为“AI”对话，更加通用。\n- 明确历史记录页面路径，加入 source=agents 以便用户跳转后统计。\n- 支付接口示例优化：PowerShell 示例中 body 编码方式与 Linux 保持一致，更清晰直观。\n- 其余功能、API 说明、调用流程保持一致。\n\nv1.0.0 | 2026-04-28T12:27:35.582Z | user\n\naicraft-skill 1.0.0\n\n- Initial release of the 爱创AI平台（www.51aic.com）电商AI内容创作助手技能。\n- Supports AI-powered image and video generation, e-commerce product editing, virtual try-ons, watermark removal, background replacement, and more via 爱创AI API.\n- Guides users through a secure token-based authentication process required for all API actions.\n- Provides detailed flows for uploading images, generating images (17 modes), and testing video generation (currently in development).\n- Implements comprehensive error handling and points/credit query with 2-step authentication.\n- Includes explicit usage scenarios and step-by-step user instructions for maximum clarity.\n\nArchive index:\n\nArchive v1.0.8: 6 files, 19340 bytes\n\nFiles: _meta.json (132b), evals/evals.json (2711b), references/image-modes.md (7640b), references/video-config.md (3155b), skill-card.md (2408b), SKILL.md (39475b)\n\nFile v1.0.8:SKILL.md\n\n---\nname: aicraft-skill\ndescription: >\n    爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能：\n\n    - 电商作图、商品图生成、主图套图、详情图制作\n    - AI生成图片、AI绘画、AI作图、Agent模式智能生成\n    - AI试衣、AI试鞋、AI试戴、虚拟试穿\n    - 商品精修、去水印、商品换色、服装去皱\n    - 图片翻译、商品替换背景、商品平铺图\n    - 换姿势、换表情、去牛皮癣/去除杂物\n    - AI视频生成、商品讲解视频、带货视频、短视频制作\n    - AI详情图生成、商品详情页、详情页规划\n    - 风格复刻、风格迁移、参考图风格生成\n    - 资产管理、素材管理、历史作品查看/下载/删除\n    - 提到\"爱创\"、\"51aic\"、\"aicraft\"、\"大泽AI\"\n    - 任何需要上传图片进行AI处理/编辑/生成的电商场景\n\n    此技能帮助用户通过爱创AI平台的API完成图片生成、视频生成、图片编辑、详情图生成、风格复刻、资产管理等任务。\n    支持18种图片生成模式、AI视频生成、AI详情图生成、风格复刻和资产管理。\n---\n\n# 爱创 AI 平台技能\n\n## 概述\n\n爱创 AI 平台（https://www.51aic.com?source=agents）是面向电商商家的AI内容创作平台，提供AI图片生成、AI视频生成、AI详情图生成、风格复刻、商品精修、虚拟试穿等全场景AI作图功能。\n\n本技能允许用户在 AI 对话中直接调用爱创 AI 平台的服务，无需手动访问网页。\n\n## 图片展示规则（重要）\n\n**所有生成出来的图片，必须使用缩略图方式展示，不要直接展示原图。**\n\n展示方式：\n1. **缩略图 URL**：使用 API 返回的 `thumbnailUrl` 字段（自带 `?x-oss-process=image/resize,w_530` 缩放参数），或在原图 URL 后拼接 `?x-oss-process=image/resize,w_530`\n2. **自定义缩略尺寸**：如需更小的缩略图，可调整 resize 宽度参数（如 `w_200`、`w_300`）\n3. **多图展示**：生成多张图片时，用缩略图网格排列展示，每张图附带原图下载链接\n4. **单图展示**：先展示缩略图，再提供原图 URL 供用户查看大图\n\n示例：\n- 原图：`https://oss.fzputi.com/xxx/result.png`\n- 缩略图（530px）：`https://oss.fzputi.com/xxx/result.png?x-oss-process=image/resize,w_530`\n\n## 认证流程\n\n**所有 API 调用都需要用户的 token。**\n\n如果用户没有提供过 token，按以下步骤引导用户获取：\n\n1. 请用户打开浏览器访问 https://www.51aic.com/openclaw?source=agents\n2. 点击右上角登录（支持手机号验证码或微信扫码）\n3. 登录成功后，页面会自动显示当前 token\n4. 点击「复制 token」按钮，将 token 复制到剪贴板\n5. 将复制的 token 粘贴到对话中\n\n> **安全提示**：token 是用户的登录凭证，请勿在公共对话中分享。对话中的 token 仅在当前会话有效。\n\n获取到 token 后，保存到上下文中，后续所有 API 调用自动使用。\n\n## API 基础配置\n\n```\n主 API 地址:    https://aicraft.51aic.com\n文件上传地址:   https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\n图片 CDN:      https://oss.fzputi.com/\n```\n\n所有请求需要在 HTTP Header 中携带：`Token: <用户token>`\n\n## 核心能力\n\n### 1. 图片上传\n\n如果用户提供了本地图片文件，需要先上传到平台 OSS。\n\n**上传逻辑：**\n\n1. 读取图片文件，转为 base64 编码\n2. 拼接成 `data:image/jpeg;base64,...` 格式\n3. 生成 OSS 路径：`tools/aiCraft/1m/YYYYMMDD/<uuid>.<ext>`\n4. POST 到上传接口\n\n**macOS/Linux：**\n\n```bash\nFILE_PATH=\"<图片路径>\"\nB64=$(openssl base64 -in \"$FILE_PATH\" | tr -d '\\n')\nEXT=\"${FILE_PATH##*.}\"\n[ \"$EXT\" = \"jpeg\" ] && EXT=\"jpg\"\nUUID=$(uuidgen | tr '[:upper:]' '[:lower:]' | tr -d '-')\nDATE=$(date +%Y%m%d)\nMIME=\"image/$EXT\"\n[ \"$EXT\" = \"jpg\" ] && MIME=\"image/jpeg\"\n\ncurl -s -X POST \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d \"{\\\"ossFilePath\\\":\\\"tools/aiCraft/1m/$DATE/$UUID.$EXT\\\",\\\"fileBase64\\\":\\\"data:$MIME;base64,$B64\\\"}\"\n```\n\n**Windows：**\n\n```powershell\n$FilePath = \"<图片路径>\"\n$B64 = [Convert]::ToBase64String([IO.File]::ReadAllBytes($FilePath))\n$Ext = [System.IO.Path]::GetExtension($FilePath).TrimStart('.')\nif ($Ext -eq \"jpeg\") { $Ext = \"jpg\" }\n$UUID = [Guid]::NewGuid().ToString().Replace(\"-\", \"\").ToLower()\n$Date = Get-Date -Format \"yyyyMMdd\"\n$MIME = \"image/$Ext\"\nif ($Ext -eq \"jpg\") { $MIME = \"image/jpeg\" }\n\n$Body = @{\n    ossFilePath = \"tools/aiCraft/1m/$Date/$UUID.$Ext\"\n    fileBase64 = \"data:$MIME;base64,$B64\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n上传成功后返回的可能是完整 URL（`https://oss.fzputi.com/...`）或相对路径（`tools/aiCraft/1m/...`）。如果是相对路径，需拼接 CDN 前缀：`https://oss.fzputi.com/` + 相对路径。\n\n### 2. 图片生成（18 种模式）\n\n支持 18 种图片生成模式，详见 [references/image-modes.md](references/image-modes.md)。\n\n**Agent 模式**（首选推荐）：AI 智能体辅助生成，上传参考图后 AI 自主分析意图、制定方案并生成优化图片。这是平台前端的默认首屏模式，交互最自然、智能程度最高。\n\n当用户没有明确指定具体功能模式时（如 AI 试衣、去水印等），**优先引导用户使用 Agent 模式**：上传参考图 → 描述需求 → AI 分析生成。\n\nAgent 模式**只能**通过 SSE 流式接口 `Task/GenerateAgentImageStream` 调用，参数为 `conversationId`、`imageUrls`（参考图URL数组）、`des`（prompt）、`ratio`、`taskJobId`，流式返回思考过程（意图分析→方案制定→生成结果）。不支持 `Task/Publish`。\n\n**Agent SSE 接口调用要点（重要）：**\n\n1. **端点**：`POST https://aicraft.51aic.com/api/v1/Task/GenerateAgentImageStream`\n2. **参数**：\n   ```json\n   {\n       \"conversationId\": \"<会话ID>\",\n       \"imageUrls\": [\"https://oss.fzputi.com/...\"],\n       \"des\": \"用户需求描述\",\n       \"ratio\": \"16:9\",\n       \"taskJobId\": \"<uuid>\"\n   }\n   ```\n3. **响应格式**：SSE `data:` 行，每行是嵌套 JSON：\n   ```\n   data:{\"code\":200,\"result\":{\"reasoningContent\":null,\"content\":\"{\\\"msg_type\\\":\\\"...\\\",\\\"data\\\":...}\"},\"msg\":\"success\"}\n   ```\n   需要双层解析：外层 `result.content` 是 JSON 字符串，内层 `msg_type` 标识事件类型：\n   - `status_change`：状态更新（\"正在不断思考中...\" → \"正在生成图像中...\" → \"图片生成成功！\"）\n   - `task_info`：生成信息（含 `image_length`）\n   - `status_change_daze`：详细计划（含 `tasks` 数组，含 AI 生成的 prompt、intention、ratio）\n   - `workflow_finish`：工作流完成结果（含 `downloadUrl` 等信息）\n   - `asset_outputs`：**最终图片URL**（含 `assetId` 和 `url` 字段，**这是提取图片URL的关键事件**）\n   - `task_error`：错误信息\n\n4. **图片URL提取**：从 `workflow_finish` 事件的 `data` 中用正则提取 `\"url\":\"https://oss.fzputi.com/...\"` ；也可从 `asset_outputs` 事件的 `data` 数组中取 `type==\"image\"` 的 `url` 字段。**注意**：`task_info` 事件只返回 `image_length`，不包含图片URL。\n5. **读取方式**：Python 推荐用 `http.client.HTTPSConnection` 的 `response.read()` 一次性读取完整响应体（约 6KB），然后按 `\\n` 分行解析 `data:` 前缀。**不要用** `urllib.request` 逐字节读取 SSE 流——会因缓冲导致读不到内容。\n6. **taskJobId**：自行生成 UUID（无后缀），返回的 `assetId` 会带 `_YYYYMM` 后缀（如 `d73e42fa11b74ffaa220efd31e214331_202606`），但 `taskJobId` 参数传无后缀的即可。\n7. **Conversation/Search 返回格式**：返回的是 `result.list[].id`（不是 `result.items[].conversationId`），注意字段名差异。\n\n**Agent 模式完整 Python 实现（推荐，Windows/通用）：**\n\n由于 Agent 模式的 SSE 流式接口有嵌套 JSON 格式，Python `http.client` 是最可靠的实现方式。中文 prompt 必须用 `json.dumps(payload, ensure_ascii=False)` 编码，避免中文乱码。\n\n```python\nimport http.client, urllib.request, json, uuid, time, base64, os, sys, io, re\n\n# Windows GBK 编码修复\nsys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace')\nsys.stderr = io.TextIOWrapper(sys.stderr.buffer, encoding='utf-8', errors='replace')\n\nTOKEN = \"<用户token>\"\nBASE_API = \"aicraft.51aic.com\"\n\ndef api_post(url, payload, token):\n    data = json.dumps(payload, ensure_ascii=False).encode(\"utf-8\")\n    headers = {\"Content-Type\": \"application/json; charset=utf-8\", \"Token\": token}\n    req = urllib.request.Request(url, data=data, headers=headers)\n    with urllib.request.urlopen(req, timeout=60) as resp:\n        return json.loads(resp.read().decode(\"utf-8\"))\n\ndef upload_image(file_path, token):\n    with open(file_path, \"rb\") as f:\n        b64 = base64.b64encode(f.read()).decode(\"utf-8\")\n    ext = os.path.splitext(file_path)[1].lstrip(\".\").lower()\n    if ext == \"jpeg\": ext = \"jpg\"\n    mime = \"image/jpeg\" if ext == \"jpg\" else f\"image/{ext}\"\n    file_uuid = uuid.uuid4().hex\n    date_str = time.strftime(\"%Y%m%d\")\n    oss_path = f\"tools/aiCraft/1m/{date_str}/{file_uuid}.{ext}\"\n    payload = {\"ossFilePath\": oss_path, \"fileBase64\": f\"data:{mime};base64,{b64}\"}\n    result = api_post(\"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\", payload, token)\n    if result.get(\"code\") == 200:\n        oss_url = result[\"result\"]\n        if not oss_url.startswith(\"http\"):\n            oss_url = \"https://oss.fzputi.com/\" + oss_url\n        return oss_url\n    raise Exception(f\"上传失败: {result}\")\n\ndef get_conversation_id(token):\n    result = api_post(\n        \"https://aicraft.51aic.com/api/v1/Conversation/Search\",\n        {\"projectType\": \"IMAGE\", \"pageIndex\": 1, \"pageSize\": 1,\n         \"sortField\": \"lastMessageAt\", \"sortType\": \"desc\"}, token)\n    if result.get(\"code\") == 200 and result.get(\"result\", {}).get(\"list\"):\n        return result[\"result\"][\"list\"][0][\"id\"]\n    raise Exception(f\"查询会话失败: {result}\")\n\ndef agent_generate(conv_id, image_urls, des, ratio, token):\n    \"\"\"Agent模式SSE生成，返回图片URL\"\"\"\n    task_job_id = uuid.uuid4().hex\n    payload = json.dumps({\n        \"conversationId\": conv_id, \"imageUrls\": image_urls,\n        \"des\": des, \"ratio\": ratio, \"taskJobId\": task_job_id\n    }, ensure_ascii=False).encode(\"utf-8\")\n    headers = {\n        \"Content-Type\": \"application/json; charset=utf-8\",\n        \"Token\": token, \"Accept\": \"text/event-stream\", \"Cache-Control\": \"no-cache\"\n    }\n    conn = http.client.HTTPSConnection(BASE_API, timeout=180)\n    conn.request(\"POST\", \"/api/v1/Task/GenerateAgentImageStream\", body=payload, headers=headers)\n    response = conn.getresponse()\n    body = response.read().decode(\"utf-8\", errors=\"replace\")\n    conn.close()\n\n    # 解析SSE，提取图片URL\n    result_image_url = None\n    for line in body.split(\"\\n\"):\n        line = line.strip()\n        if not line.startswith(\"data:\"): continue\n        try:\n            outer = json.loads(line[5:].strip())\n            content_str = outer.get(\"result\", {}).get(\"content\", \"\")\n            if not content_str: continue\n            content = json.loads(content_str)\n            msg_type = content.get(\"msg_type\", \"\")\n            data_val = content.get(\"data\", \"\")\n\n            if msg_type == \"workflow_finish\":\n                # 从 workflow_finish 中用正则提取图片URL\n                raw = json.dumps(data_val, ensure_ascii=False)\n                urls = re.findall(r'\"url\"\\s*:\\s*\"(https?://[^\"]+\\.png[^\"]*)\"', raw)\n                for u in urls:\n                    if 'generate' in u or 'aiplatform' in u:\n                        result_image_url = u\n                        break\n            elif msg_type == \"asset_outputs\":\n                if isinstance(data_val, list):\n                    for item in data_val:\n                        if item.get(\"type\") == \"image\" and item.get(\"url\"):\n                            result_image_url = item[\"url\"]\n                            break\n        except (json.JSONDecodeError, KeyError):\n            pass\n    return result_image_url\n\n# 使用示例\noss_url = upload_image(\"<图片路径>\", TOKEN)\nconv_id = get_conversation_id(TOKEN)\nimage_url = agent_generate(conv_id, [oss_url], \"用户需求描述\", \"16:9\", TOKEN)\nif image_url:\n    thumb = image_url + \"?x-oss-process=image/resize,w_530\"\n    print(f\"缩略图: {thumb}\")\n    print(f\"原图: {image_url}\")\n```\n\n其他常用模式：\n\n-   **自由创作**：通用图片生成，上传参考图并描述需求即可\n\nAPI 端点：`POST https://aicraft.51aic.com/api/v1/Task/Publish`\n\n> **业务规则（重要）**：提交生成任务时，必须先查询并复用现有的 `conversationId`，**一律不创建新的 conversation（批次）**。这样能保证所有记录在同一个会话下，查询历史时不会断档。\n>\n> 查询方式：`POST /api/v1/Conversation/Search`（projectType: IMAGE/VIDEO，按 lastMessageAt 倒序取第一条）\n\n> **prompt 字段规则（重要）**：\n>\n> -   **Agent 模式 / 自由创作**：prompt 由用户自定义，是核心必填参数，描述想要什么图片\n> -   **其他 16 种模式**（如 AI 试衣、去水印等）：有**固定的默认 prompt**（详见 [references/image-modes.md](references/image-modes.md)），不可为空，否则任务发布会失败（code: 999）\n> -   部分模式（如换色、翻译、换表情）的 prompt 包含动态参数（颜色、语言、表情等），需要根据用户选择填充\n\n请求体示例（自由创作）：\n\n```json\n{\n    \"conversationId\": \"\",\n    \"projectType\": \"IMAGE\",\n    \"mode\": 1,\n    \"type\": 2,\n    \"payload\": {\n        \"aspectRatio\": \"auto\",\n        \"count\": 1,\n        \"prompt\": \"一件红色连衣裙，白色背景，电商商品图\",\n        \"sceneMode\": \"free_creation\",\n        \"referenceImages\": [{ \"key\": \"images\", \"index\": 0, \"url\": \"https://oss.fzputi.com/...\", \"description\": \"\" }]\n    }\n}\n```\n\n### 3. AI 详情图生成\n\n上传产品图，AI 自动分析并生成完整的电商商品详情页（含多张详情图）。\n\n**流程：**\n\n1. 创建批次 → AI 分析产品并生成详情页规划方案\n2. 用户确认/编辑规划方案（可选）\n3. 生成详情图 → 按模块逐张生成\n4. 查询结果和下载\n\n**核心 API：**\n\n-   `POST /api/v1/DetailImage/CreateBatch` — 创建详情图批次，AI 生成规划方案\n-   `POST /api/v1/DetailImage/GenerateBatchImages` — 确认规划后，生成详情图\n-   `POST /api/v1/DetailImage/GetBatchDetail` — 查询批次详情和规划方案\n-   `POST /api/v1/DetailImage/GetBatchTaskResults` — 查询生成结果\n-   `POST /api/v1/DetailImage/GetImageTasksProgress` — 查询任务进度\n-   `POST /api/v1/DetailImage/RemakeImage` — 重新生成单张图\n\n**CreateBatch 参数：**\n\n```json\n{\n    \"batchId\": \"\", // 首次创建为空，复刻时传入旧batchId\n    \"productInfo\": \"无线智能洗地机，集吸尘拖地自清洁于一体...\", // 产品信息描述\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"], // 产品图，1-6张\n    \"language\": \"简体中文\", // 语言：简体中文/繁体中文/英语/日语/韩语/德语/法语/阿拉伯语/俄语/泰语/印尼语/越南语/马来语/西班牙语/葡萄牙语/巴西葡萄牙语\n    \"aspectRatio\": \"3:4\", // 尺寸比例\n    \"moduleKeys\": [\"header\", \"product_showcase\", \"selling_points\"] // 选择的详情页模块\n}\n```\n\n**可用尺寸比例：** `1:1`, `2:3`, `3:2`, `3:4`（默认）, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9`\n\n**可用语言：** 简体中文、繁体中文、英语、日语、韩语、德语、法语、阿拉伯语、俄语、泰语、印尼语、越南语、马来语、西班牙语、葡萄牙语、巴西葡萄牙语\n\n**模块列表**（通过 `GET /api/v1/Template/GetDetailImageModules` 获取，各模块有名称、描述、示例图）：\n\n-   模块是详情页的标准组成部分（如首图、产品展示、卖点、参数、使用场景等）\n-   每个模块有 `key`、`displayName`、`description`、`sampleImageUrls`\n-   部分模块默认选中\n-   用户多选，至少保留 1 个模块\n\n**积分消耗：** 每张详情图 **15 积分**，总积分 = 选中模块数量 × 15\n\n**状态流转：**\n\n-   `plan_pending` → `planning`（AI 生成规划中） → `plan_completed`（规划完成，待生成） → `image_generating`（生成中） → `completed` / `failed` / `partial_completed`\n\n### 4. 风格复刻\n\n上传参考设计图和产品图，AI 学习参考图的风格并应用到产品上，生成风格一致的新图片。\n\n**核心 API：**\n\n-   `POST /api/v1/StyleReplication/CreateBatch` — 创建风格复刻批次\n-   `POST /api/v1/StyleReplication/RetryImage` — 重新生成单张图\n-   `POST /api/v1/DetailImage/GetBatchProgress` — 查询批次进度\n-   `POST /api/v1/DetailImage/GetBatchTaskResults` — 查询批次结果\n-   `POST /api/v1/DetailImage/GetImageTasksProgress` — 查询图片任务进度\n\n**CreateBatch 参数：**\n\n```json\n{\n    \"batchId\": \"\", // 首次创建为空\n    \"styleReferenceImageUrls\": [\"https://oss.fzputi.com/...\"], // 参考设计图（风格来源），最多16张\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"], // 产品素材图，最多6张\n    \"aspectRatio\": \"1:1\", // 尺寸比例\n    \"generateCount\": 1, // 生成组数：1-3\n    \"detailRequirements\": \"添加新品上市文字，使用金色渐变风格...\" // 补充要求（prompt，可为null）\n}\n```\n\n**可用尺寸比例：** `1:1`, `2:3`, `3:2`, `3:4`, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9`\n\n**积分消耗：** 每张图 **15 积分**，总积分 = 参考图数量 × 组数 × 15\n\n**状态流转：**\n\n-   `plan_pending` → `planning` → `plan_completed` → `image_generating` → `completed` / `failed` / `partial_completed`\n\n### 5. 视频生成\n\n支持商品讲解视频、带货视频、促销视频等多种类型。\n\nAPI 端点：`POST https://aicraft.51aic.com/api/v1/Task/Publish`\n\n配置参数详见 [references/video-config.md](references/video-config.md)。\n\n请求体示例（新手模式）：\n\n```json\n{\n    \"conversationId\": \"\",\n    \"projectType\": \"VIDEO\",\n    \"mode\": 1,\n    \"type\": 1,\n    \"payload\": {\n        \"prompt\": \"介绍这款红色连衣裙的优点\",\n        \"duration\": 10,\n        \"orientation\": \"9:16\",\n        \"size\": \"large\",\n        \"language\": \"0\",\n        \"videoType\": \"2\",\n        \"videoChannel\": \"stable\",\n        \"images\": [\"https://oss.fzputi.com/...\"]\n    }\n}\n```\n\n### 6. 资产管理\n\n查询和管理用户的历史生成作品（图片、视频、详情图、风格复刻）。\n\n**核心 API：**\n\n-   `POST /api/v1/Asset/Search` — 查询资产列表\n-   `POST /api/v1/Asset/BatchDelete` — 批量删除资产\n\n**资产类型 (assetType)：**\n| 类型值 | 说明 |\n|--------|------|\n| `IMAGE` | AI 作图（单图生成） |\n| `VIDEO` | AI 视频 |\n| `DETAILIMAGE` | AI 详情图 |\n| `StyleReplication` | 风格复刻 |\n\n**Search 参数：**\n\n```json\n{\n    \"pageIndex\": 1,\n    \"pageSize\": 40,\n    \"assetType\": \"IMAGE\",\n    \"sortField\": \"createTime\",\n    \"sortType\": \"desc\",\n    \"startTime\": \"2024-01-01\", // 可选\n    \"endTime\": \"2024-01-02\" // 可选\n}\n```\n\n**返回字段：**\n\n```json\n{\n  \"assetId\": \"xxx\",\n  \"fileUrl\": \"https://oss.fzputi.com/...\",\n  \"thumbnailUrl\": \"https://oss.fzputi.com/...?x-oss-process=image/resize,w_530\",\n  \"width\": 1024,\n  \"height\": 1024,\n  \"createdAt\": \"2024-01-01T12:00:00\",\n  \"extra\": {\n    \"referenceImages\": [...],\n    \"prompt\": \"...\",\n    \"sceneMode\": \"...\",\n    \"aspectRatio\": \"...\"\n  }\n}\n```\n\n### 7. 查询任务状态\n\n生成任务提交后，返回 `taskJobId` 和 `conversationId`。可通过以下接口查询任务进度：\n\n-   **任务进度**: `POST /api/v1/Task/GetProgress`（支持批量查询，见下方 API 调用参考）\n-   **详情图/风格复刻进度**: `POST /api/v1/DetailImage/GetImageTasksProgress`\n\n### 8. 查询积分\n\n积分查询需要**两步认证**：\n\n1. **获取支付认证 token**：用用户 token 调用 `/api/v1/PayPackage/GetToken`（body: `{\"appType\": 6}`），返回 `authorization`\n2. **查询积分**：用 `authorization` 作为 `Authorization` header，访问支付 API `https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType`\n\n返回用户的剩余积分（会员积分 + 套餐积分）。\n\n> **authorization 缓存**：有效期约 2 小时。在同一次对话中获取后**可复用**，不需要每次查积分都重新调用 GetToken。如后续调用返回 401，再重新获取。\n>\n> 注意：支付 API 与主 API 使用不同的认证机制。如果用户未主动要求查积分，可跳过此步骤，直接引用下方的积分消耗参考表告知用户大致消耗。\n\n## 使用流程\n\n### 图片生成流程\n\n1. 确认用户已提供 token（如未提供，引导获取）\n2. **默认推荐 Agent 模式**：当用户有参考图并描述需求时，优先使用 Agent 模式\n    - 如用户只是泛化描述（\"帮我做张商品图\"、\"生成海报\"），按 Agent 模式处理：上传参考图 + 原样传递用户需求描述 → AI 自主分析生成\n    - **重要**：Agent 模式下，将用户的原始需求直接作为 `des` 参数传给 `GenerateAgentImageStream`，让爱创 AI 自主理解，不要自己改写或理解用户意图\n    - 如用户明确指定了具体功能模式（如 AI 试衣、去水印、换色等），切换到对应模式并使用其默认 prompt\n3. **确认 prompt**：\n    - Agent 模式：**原样传递用户需求**，不做额外解读（用户说\"帮我生成一个海报\"就传\"帮我生成一个海报\"）\n    - 自由创作：由用户描述需求生成 prompt（核心必填参数）\n    - 其他 16 种模式：使用对应模式的**默认 prompt**（见 [references/image-modes.md](references/image-modes.md)），如用户有特殊需求可在此基础上调整\n    - 部分模式（换色/翻译/换表情等）需要额外确认动态参数（颜色/语言/表情等）\n4. 询问参考图片\n5. 如有本地图片，先调用上传接口\n6. **Agent 模式**：调用 `GenerateAgentImageStream`（SSE 流式）；**其他模式**：调用 `Task/Publish`\n7. 解析响应，提取图片 URL，**使用缩略图展示**（原图 URL + `?x-oss-process=image/resize,w_530`）\n8. 告知用户可在 https://www.51aic.com/image/history?source=agents 查看\n\n### 视频生成流程\n\n1. 确认用户已提供 token\n2. 询问视频类型（商品讲解/带货/促销等）\n3. 询问参考图片和提示词\n4. 确认视频配置（通道/比例/清晰度/时长/语言）\n5. 如有本地图片，先调用上传接口\n6. 构建并发送 Publish 请求\n7. 返回任务提交结果\n\n### AI 详情图生成流程\n\n1. 确认用户已提供 token\n2. 请用户上传产品图（1-6 张）\n3. 询问产品信息描述（可选，也可使用 AI 帮写自动生成）\n4. 确认语言和尺寸比例（默认：简体中文 + 3:4）\n5. 获取模块列表，让用户选择需要的详情页模块\n6. 告知积分消耗：模块数量 × 15 积分\n7. 调用 `DetailImage/CreateBatch` 创建批次\n8. AI 生成规划方案（约需几十秒），轮询 `GetBatchDetail` 等待 `plan_completed`\n9. 规划完成后，向用户展示方案（模块列表和整体设计规范）\n10. 用户确认后，调用 `DetailImage/GenerateBatchImages` 生成详情图\n11. 轮询 `GetImageTasksProgress` 查询进度，完成后展示结果\n\n### 风格复刻流程\n\n1. 确认用户已提供 token\n2. 请用户上传参考设计图（风格来源，最多 16 张）\n3. 请用户上传产品素材图（最多 6 张）\n4. 确认尺寸比例和生成组数（1-3 组，默认 1 组）\n5. 询问补充要求（prompt，可选）\n6. 告知积分消耗：参考图数量 × 组数 × 15 积分\n7. 调用 `StyleReplication/CreateBatch` 创建批次\n8. 轮询 `DetailImage/GetBatchProgress` 查询进度\n9. 完成后展示结果\n\n### 资产管理流程\n\n1. 确认用户已提供 token\n2. 询问要查询的资产类型（图片/视频/详情图/风格复刻）\n3. 可选：确认日期范围、排序方式\n4. 调用 `Asset/Search` 查询\n5. 展示资产列表，支持告知下载链接\n6. 如用户要求删除，调用 `Asset/BatchDelete`\n\n## 积分消耗参考\n\n| 功能                             | 积分消耗                        |\n| -------------------------------- | ------------------------------- |\n| 图片生成（自由创作等大多数模式） | 5 积分/张                       |\n| 主图套图                         | 25 积分/套（5 张）              |\n| AI 详情图                        | 15 积分/张（按模块数量计）      |\n| 风格复刻                         | 15 积分/张（参考图数量 × 组数） |\n| 视频生成（stable 5 秒）          | 150 积分                        |\n| 视频生成（stable 10 秒）         | 200 积分                        |\n| 视频生成（stable 15 秒）         | 260 积分                        |\n| 视频生成（fast 5 秒）            | 100 积分                        |\n| 视频生成（fast 10 秒）           | 150 积分                        |\n| 视频生成（fast 15 秒）           | 200 积分                        |\n| AI 优质帮写视频脚本              | 2 积分                          |\n| 产品分析（AI 帮写）              | 1 积分                          |\n\n在提交生成任务前，可引用上表告知用户所需积分。如用户明确要求查当前余额，再执行积分查询（需要两步认证，见\"查询积分\"部分）。如积分不足，告知用户需要充值。\n\n## 错误处理\n\n常见错误及处理方式：\n\n| 错误码   | 含义              | 处理方式                                                                                                                    |\n| -------- | ----------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| 401      | Token 无效或过期  | 引导用户重新获取 token                                                                                                      |\n| 999      | 任务发布失败      | 常见原因：① prompt 为空或不符合模式要求（非 Agent/自由创作模式必须使用默认 prompt）；② 参数格式错误。检查 prompt 和各字段值 |\n| 积分不足 | 积分不够生成      | 告知用户当前积分和所需积分                                                                                                  |\n| 上传失败 | 图片格式/大小不符 | 检查图片格式(jpg/png/webp)和大小(≤10MB)                                                                                     |\n\n## API 调用参考\n\n以下是用 exec 工具直接调用 API 的示例。**macOS/Linux 用 `curl`，Windows 用 PowerShell `Invoke-RestMethod`**。\n\n调用前需确保已在 Header 中携带 `Token: <用户token>`。\n\n### 查询积分（两步认证，authorization 可复用约 2 小时）\n\n**Step 1 — 获取支付认证 token：**\n\n**macOS/Linux：**\n\n```bash\nAUTH=$(curl -s -X POST \"https://aicraft.51aic.com/api/v1/PayPackage/GetToken\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"appType\": 6}' | grep -o '\"result\":\"[^\"]*\"' | sed 's/\"result\":\"//;s/\"$//')\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"appType\": 6}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\n$AuthRes = Invoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/PayPackage/GetToken\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n$AUTH = $AuthRes.result\n```\n\n**Step 2 — 查询积分余额：**\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Authorization: $AUTH\" \\\n  -d '{\"ValueAddedServicesType\": 4}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"ValueAddedServicesType\": 4}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Authorization\"=$AUTH} -Body $BodyBytes\n```\n\n### 查询会话 ID（复用现有批次）\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Conversation/Search\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"projectType\": \"IMAGE\", \"pageIndex\": 1, \"pageSize\": 1, \"sortField\": \"lastMessageAt\", \"sortType\": \"desc\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"projectType\": \"IMAGE\", \"pageIndex\": 1, \"pageSize\": 1, \"sortField\": \"lastMessageAt\", \"sortType\": \"desc\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Conversation/Search\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 发布图片生成任务\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/Publish\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"conversationId\": \"<会话ID>\",\n    \"projectType\": \"IMAGE\",\n    \"mode\": 1,\n    \"type\": 2,\n    \"payload\": {\n      \"aspectRatio\": \"auto\",\n      \"count\": 1,\n      \"prompt\": \"一件红色连衣裙，白色背景，电商商品图\",\n      \"sceneMode\": \"free_creation\",\n      \"referenceImages\": []\n    }\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    conversationId = \"<会话ID>\"\n    projectType = \"IMAGE\"\n    mode = 1\n    type = 2\n    payload = @{\n        aspectRatio = \"auto\"\n        count = 1\n        prompt = \"一件红色连衣裙，白色背景，电商商品图\"\n        sceneMode = \"free_creation\"\n        referenceImages = @()\n    }\n} | ConvertTo-Json -Depth 5\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/Publish\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 发布视频生成任务\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/Publish\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"conversationId\": \"<会话ID>\",\n    \"projectType\": \"VIDEO\",\n    \"mode\": 1,\n    \"type\": 1,\n    \"payload\": {\n      \"prompt\": \"介绍这款红色连衣裙的优点\",\n      \"duration\": 10,\n      \"orientation\": \"9:16\",\n      \"size\": \"large\",\n      \"language\": \"0\",\n      \"videoType\": \"2\",\n      \"videoChannel\": \"stable\",\n      \"images\": [\"https://oss.fzputi.com/...\"]\n    }\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    conversationId = \"<会话ID>\"\n    projectType = \"VIDEO\"\n    mode = 1\n    type = 1\n    payload = @{\n        prompt = \"介绍这款红色连衣裙的优点\"\n        duration = 10\n        orientation = \"9:16\"\n        size = \"large\"\n        language = \"0\"\n        videoType = \"2\"\n        videoChannel = \"stable\"\n        images = @(\"https://oss.fzputi.com/...\")\n    }\n} | ConvertTo-Json -Depth 5\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/Publish\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 查询任务进度\n\n提交任务后返回 `taskJobId`。可通过 `Task/GetProgress` 查询任务状态，支持一次查多个。\n\n-   图片任务 `taskType`: `2`\n-   视频任务 `taskType`: `1`\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/GetProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"conditions\":[{\"taskJobId\":\"<任务ID>\",\"taskType\":2}]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"conditions\":[{\"taskJobId\":\"<任务ID>\",\"taskType\":2}]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/GetProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 创建批次\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/CreateBatch\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"batchId\": \"\",\n    \"productInfo\": \"无线智能洗地机，集吸尘拖地自清洁于一体\",\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"],\n    \"language\": \"简体中文\",\n    \"aspectRatio\": \"3:4\",\n    \"moduleKeys\": [\"header\", \"product_showcase\", \"selling_points\"]\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    batchId = \"\"\n    productInfo = \"无线智能洗地机，集吸尘拖地自清洁于一体\"\n    productImageUrls = @(\"https://oss.fzputi.com/...\")\n    language = \"简体中文\"\n    aspectRatio = \"3:4\"\n    moduleKeys = @(\"header\", \"product_showcase\", \"selling_points\")\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/CreateBatch\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 生成图片\n\n规划方案确认后调用：\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GenerateBatchImages\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchid\": \"<batchId>\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchid\": \"<batchId>\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GenerateBatchImages\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 查询批次详情\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchDetail\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchId\": \"<batchId>\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchId\": \"<batchId>\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchDetail\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 查询任务进度\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetImageTasksProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"type\": 1, \"taskIds\": [\"<taskId1>\", \"<taskId2>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"type\": 1, \"taskIds\": [\"<taskId1>\", \"<taskId2>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetImageTasksProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 风格复刻 — 创建批次\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/StyleReplication/CreateBatch\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"batchId\": \"\",\n    \"styleReferenceImageUrls\": [\"https://oss.fzputi.com/ref1.jpg\"],\n    \"productImageUrls\": [\"https://oss.fzputi.com/prod1.jpg\"],\n    \"aspectRatio\": \"1:1\",\n    \"generateCount\": 1,\n    \"detailRequirements\": \"使用金色渐变风格，添加促销标签\"\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    batchId = \"\"\n    styleReferenceImageUrls = @(\"https://oss.fzputi.com/ref1.jpg\")\n    productImageUrls = @(\"https://oss.fzputi.com/prod1.jpg\")\n    aspectRatio = \"1:1\"\n    generateCount = 1\n    detailRequirements = \"使用金色渐变风格，添加促销标签\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/StyleReplication/CreateBatch\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 风格复刻 — 查询批次进度\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchIds\": [\"<batchId>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchIds\": [\"<batchId>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 资产管理 — 查询资产\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Asset/Search\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"pageIndex\": 1,\n    \"pageSize\": 40,\n    \"assetType\": \"IMAGE\",\n    \"sortField\": \"createTime\",\n    \"sortType\": \"desc\"\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    pageIndex = 1\n    pageSize = 40\n    assetType = \"IMAGE\"\n    sortField = \"createTime\"\n    sortType = \"desc\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Asset/Search\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 资产管理 — 批量删除\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Asset/BatchDelete\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"assetIds\": [\"<assetId1>\", \"<assetId2>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"assetIds\": [\"<assetId1>\", \"<assetId2>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Asset/BatchDelete\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\nFile v1.0.8:_meta.json\n\n{\n  \"ownerId\": \"kn79mgfe1sbe8ts4669xy41nq9845fx2\",\n  \"slug\": \"aicraft-skill\",\n  \"version\": \"1.0.8\",\n  \"publishedAt\": 1781009973888\n}\n\nFile v1.0.8:references/image-modes.md\n\n# 图片生成模式详解\n\n爱创AI平台支持18种图片生成模式，每种模式对应不同的 `sceneMode` 值和参数要求。\n\n## 重要提示\n\n### prompt 字段规则\n\n大多数模式**必须有 prompt**，且不同模式有固定的默认 prompt。如果 prompt 为空或不符合模式要求，任务会发布失败（code: 999）。\n\n- **Agent模式 / 自由创作**: prompt 由用户自定义描述，是核心参数\n- **其他16种模式**: 有预设的默认 prompt（见各模式说明），通常不需要用户额外输入\n- 部分模式的 prompt 中包含动态参数（如颜色、语言、表情等），需要根据实际情况填充\n\n## 模式列表\n\n### 1. Agent模式 (agent) ⭐ 首选推荐\n- **sceneMode**: `agent_image`\n- **说明**: AI智能体辅助图片生成，上传参考图后由AI自主分析意图、制定方案并生成优化后的图片。支持流式进度反馈（思考中→分析意图→制定方案→生成中）。**平台默认首屏模式**，当用户没有明确指定具体功能模式时，优先推荐使用此模式。\n- **参考图**: 最多10张（建议至少上传1张让AI分析）\n- **参数**: `prompt`（用户自定义需求描述）\n- **积分**: 5积分/张\n- **API 说明**: 前端使用 SSE 流式接口 `Task/GenerateAgentImageStream`，参数：`conversationId`、`imageUrls`（参考图URL数组）、`des`（prompt）、`ratio`（比例）、`taskJobId`。流式返回 `status_change`（状态更新）→ `task_intention`（意图分析）→ `task_plan`（方案制定）→ `task_info`（生成结果，含 `image_length`）→ `workflow_finish`（工作流完成）。出错时返回 `task_error`。如无需流式体验，也可用 `Task/Publish` + `sceneMode: free_creation` 获得类似的图片生成效果。\n\n### 2. 自由创作 (freestyle)\n- **sceneMode**: `free_creation`\n- **说明**: 最通用的图片生成模式，上传参考图并描述需求即可生成\n- **参考图**: 最多10张\n- **参数**: `prompt`, `referenceImages`\n- **默认 prompt**: 用户自定义（必填，描述想要什么图片）\n- **积分**: 5积分/张\n\n### 3. 商品图 (product-image)\n- **sceneMode**: `product_image`\n- **说明**: 专为电商商品展示设计，生成高质量商品图\n- **参考图**: 需要上传商品照片\n- **参数**: `prompt`, `referenceImages`\n- **默认 prompt**: `生成专业商品图。`\n\n### 4. 主图套图 (main-picture)\n- **sceneMode**: `main_image_set`\n- **说明**: 生成电商主图套图（通常包含5张不同角度/场景的图片）\n- **积分**: 25积分/套（5张）\n- **参考图**: 需要上传商品照片\n- **默认 prompt**: `基于上传参考图，生成一套5张的主图套图`\n\n### 5. AI试衣 (try-clothes)\n- **sceneMode**: `ai_try_on_clothes`\n- **说明**: 将衣服虚拟穿到模特身上\n- **默认 prompt**: `将上传的服饰自然穿在模特身上。`\n- **参考图**:\n  - 第一组 (`images`): **衣服照片（必填）**，最多2张\n  - 第二组 (`images2`): 模特照片（**可选**），最多1张。如不填，平台使用默认模特\n\n### 6. AI试鞋 (try-shoes)\n- **sceneMode**: `ai_try_on_shoes`\n- **说明**: 将鞋子虚拟穿到模特脚上\n- **默认 prompt**: `将鞋子自然穿在脚部姿势上。`\n- **参考图**:\n  - 第一组 (`images`): **鞋子照片（必填）**\n  - 第二组 (`images2`): 试鞋姿势图（**可选**），最多1张\n\n### 7. 商品换色 (product-recolor)\n- **sceneMode**: `product_recolor`\n- **说明**: 改变商品的颜色\n- **默认 prompt**: `将商品主体颜色更改为【{目标颜色}】`\n- **参考图**: 商品照片\n- **额外参数**: 需要在 prompt 中指定目标颜色，如 `将商品主体颜色更改为【红色】`\n\n### 8. 去除水印 (remove-watermark)\n- **sceneMode**: `remove_watermark`\n- **说明**: 去除图片中的水印\n- **默认 prompt**: `去除图片中的水印。`\n- **参考图**: 带水印的图片\n\n### 9. 手持商品 (handheld-product)\n- **sceneMode**: `handheld_product`\n- **说明**: 生成模特手持商品的图片\n- **默认 prompt**: `生成自然的手持商品图。`\n- **参考图**: 商品照片 + 可选的手部姿势参考\n\n### 10. AI试戴 (ai-try-on-accessories)\n- **sceneMode**: `ai_try_on_accessories`\n- **说明**: 虚拟试戴配饰（项链、耳环、眼镜等）\n- **默认 prompt**: `一键试戴。`\n- **参考图**: 模特照片 + 配饰照片\n\n### 11. 服装去皱 (clothes-dewrinkle)\n- **sceneMode**: `clothes_dewrinkle`\n- **说明**: 自动去除服装照片中的褶皱\n- **默认 prompt**: `抚平服装表面褶皱，去皱强度：【{强度}】`\n- **参考图**: 有褶皱的服装照片\n- **额外参数**: prompt 中需要指定去皱强度，如 `抚平服装表面褶皱，去皱强度：【强】`\n\n### 12. 去牛皮癣/去除杂物 (remove-noise)\n- **sceneMode**: `remove_psoriasis`\n- **说明**: 去除图片中的杂物、牛皮癣广告等\n- **默认 prompt**: `一键清除牛皮癣，还原干净画面。`\n- **参考图**: 需要清理的照片\n\n### 13. 图片翻译 (image-translate)\n- **sceneMode**: `image_translate`\n- **说明**: 翻译图片中的文字内容\n- **默认 prompt**: `识别图中文字并翻译成【{目标语言}】。`\n- **参考图**: 包含文字的图片\n- **额外参数**: prompt 中需要指定目标语言，如 `识别图中文字并翻译成【英语】。`\n\n### 14. 商品替换 (product-replace)\n- **sceneMode**: `product_replace`\n- **说明**: 将商品放入新的背景/场景中\n- **默认 prompt**: `用目标商品替换原图商品。`\n- **参考图**: 商品照片 + 可选的场景参考\n\n### 15. 商品平铺图 (product-flat-lay)\n- **sceneMode**: `product_flat_lay`\n- **说明**: 生成商品的平铺展示图\n- **默认 prompt**: `提取图中商品生成平铺图。`\n- **参考图**: 商品照片\n\n### 16. 换姿势 (pose-change)\n- **sceneMode**: `pose_change`\n- **说明**: 改变人物照片中的姿势\n- **默认 prompt**: `将人物从原姿势改为新姿势。`\n- **参考图**: 人物照片 + 目标姿势参考\n\n### 17. 换表情 (expression-change)\n- **sceneMode**: `expression_change`\n- **说明**: 改变人物照片中的表情\n- **默认 prompt**: `将人物表情自然替换为【{目标表情}】`\n- **参考图**: 人物照片\n- **额外参数**: prompt 中需要指定目标表情，如 `将人物表情自然替换为【微笑】`\n\n### 18. 商品精修 (product-retouch)\n- **sceneMode**: `product_retouch`\n- **说明**: 自动精修商品照片（调光、调色、锐化等）\n- **默认 prompt**: `精修图片。`\n- **参考图**: 商品照片\n- **⚠️ 注意**: 当前后端枚举值未完全对接，调用可能报错。建议优先使用其他模式。\n\n## 图片比例选项\n\n所有图片模式支持以下比例：\n\n| 比例 | 说明 |\n|------|------|\n| `auto` | 智能比例（默认） |\n| `1:1` | 正方形 |\n| `2:3` | 竖向 portrait |\n| `3:2` | 横向 landscape |\n| `3:4` | 竖向 portrait |\n| `9:16` | 竖向（短视频封面） |\n| `16:9` | 横向（横幅） |\n\n## 生成数量\n\n- Agent模式：不支持数量选择（固定1张）\n- 自由创作等大多数模式：1-4张\n- 主图套图：固定5张\n\n## 参考图数据结构\n\n```json\n{\n  \"referenceImages\": [\n    {\n      \"key\": \"images\",\n      \"index\": 0,\n      \"url\": \"https://oss.fzputi.com/...\",\n      \"description\": \"\"\n    }\n  ]\n}\n```\n\n对于需要两组图片的模式（如AI试衣），使用：\n```json\n{\n  \"referenceImages\": [\n    { \"key\": \"images\", \"index\": 0, \"url\": \"模特照片URL\", \"description\": \"\" },\n    { \"key\": \"images2\", \"index\": 0, \"url\": \"衣服照片URL\", \"description\": \"\" }\n  ]\n}\n```\n\nFile v1.0.8:references/video-config.md\n\n# 视频生成配置详解\n\n## 生成模式\n\n### 新手模式 (mode: 1)\n- 上传图片后，系统自动识别商品信息并生成脚本\n- 适合快速出视频\n- 额外消耗：脚本生成 2 积分\n\n### 专业模式 (mode: 2)\n- 上传图片后，系统生成多镜头分镜脚本（含镜头、台词、动作）\n- 适合精细控制视频内容\n- 额外消耗：脚本生成 2 积分\n\n## 视频通道 (videoChannel)\n\n**当前可用通道：**\n\n| 通道 | 值 | 时长选项 | 积分消耗 | 特点 |\n|------|-----|----------|----------|------|\n| 高稳通道 | `stable` | 10秒 / 15秒 | 150 / 200 | 稳定性极高，画面真实自然，适合电商爆款视频 |\n\n> 标准通道(`standard`)、增强通道(`enhanced`)、极速通道(`fast`) 当前已禁用。\n\n**新手模式总积分示例：**\n- stable 10秒 + 新手模式 = 150 + 2 = **152 积分**\n- stable 15秒 + 新手模式 = 200 + 2 = **202 积分**\n\n## 视频比例 (orientation)\n\n| 比例 | 值 | 适用平台 |\n|------|-----|----------|\n| 9:16 竖屏 | `9:16` | 抖音、快手等短视频平台（默认） |\n| 16:9 横屏 | `16:9` | B站、YouTube等横屏平台 |\n\n## 视频清晰度 (size)\n\n| 清晰度 | 值 | 说明 |\n|--------|-----|------|\n| 普清 | `small` | 标清画质，文件较小（默认） |\n| 高清 | `large` | 高清画质，推荐使用 |\n\n## 视频时长 (duration)\n\n- **stable 通道**: 10秒 或 15秒\n\n## 视频类型 (videoType)\n\n| 类型 | 值 | 说明 |\n|------|-----|------|\n| 商品推广 | `0` | 突出商品卖点和优势 |\n| 带货视频 | `1` | 直播带货风格 |\n| 商品讲解 | `2` | 详细介绍商品特点、功能和使用方法（默认） |\n| 商品促销 | `3` | 促销活动宣传 |\n| 商品测评 | `4` | 客观测评，优缺点分析 |\n| 商品口播 | `5` | 口播介绍类 |\n\n## 视频语言 (language)\n\n| 语言 | 值 |\n|------|-----|\n| 简体中文 | `0`（默认） |\n| 繁体中文 | `1` |\n| 英语 | `2` |\n| 泰语 | `3` |\n| 俄语 | `4` |\n| 越南语 | `5` |\n| 马来语 | `6` |\n| 葡萄牙语 | `7` |\n| 西班牙语 | `8` |\n\n## 默认配置推荐\n\n**电商商品讲解视频（新手模式）：**\n- mode: 1\n- videoChannel: `stable`\n- duration: 10\n- orientation: `9:16`\n- size: `large`\n- videoType: `2` (商品讲解)\n- language: `0` (简体中文)\n- 总积分：**152 积分**\n\n**电商商品讲解视频（专业模式）：**\n- mode: 2\n- videoChannel: `stable`\n- duration: 10\n- orientation: `9:16`\n- size: `large`\n- videoType: `2` (商品讲解)\n- language: `0` (简体中文)\n- 总积分：**150 积分**\n\n## API 请求示例\n\n```json\n{\n  \"conversationId\": \"\",\n  \"projectType\": \"VIDEO\",\n  \"mode\": 1,\n  \"type\": 1,\n  \"payload\": {\n    \"prompt\": \"介绍这款商品的优点和使用场景\",\n    \"duration\": 10,\n    \"orientation\": \"9:16\",\n    \"size\": \"large\",\n    \"language\": \"0\",\n    \"videoType\": \"2\",\n    \"videoChannel\": \"stable\",\n    \"images\": [\"https://oss.fzputi.com/...\"]\n  }\n}\n```\n\n## 响应示例\n\n```json\n{\n  \"code\": 200,\n  \"result\": {\n    \"conversationId\": \"xxx\",\n    \"taskJobId\": \"xxx\"\n  }\n}\n```\n\n任务提交后，用户可以在 https://www.51aic.com/video/history?source=agents 查看生成进度和结果。\n\nFile v1.0.8:skill-card.md\n\n## Description:\n\n爱创AI helps ecommerce users generate and manage product images, videos, detail-page images, style replications, and related AI-edited assets through the 51aic service.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[howerlin0329](https://clawhub.ai/user/howerlin0329)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal ecommerce operators and agents use this skill to call the 51aic service for product image generation, AI image editing, virtual try-on, product videos, detail-page image generation, style replication, credit checks, and generated asset management.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill asks users to provide a reusable 51aic account token.\n\nMitigation: Use only in private sessions, avoid sharing long-lived or broad account tokens, and remove the token from shared transcripts or logs.\n\nRisk: The skill uploads selected product images to external 51aic, fzputi, and OSS service domains.\n\nMitigation: Confirm which files will be uploaded before API calls and avoid submitting confidential or unauthorized product images.\n\nRisk: The skill can batch-delete platform assets.\n\nMitigation: Require the agent to show exact asset IDs and obtain final user confirmation before any deletion request.\n\n## Reference(s):\n\n- [ClawHub skill release page](https://clawhub.ai/howerlin0329/skills/aicraft-skill)\n- [51aic platform](https://www.51aic.com?source=agents)\n- [51aic token setup](https://www.51aic.com/openclaw?source=agents)\n- [Image generation modes](references/image-modes.md)\n- [Video generation configuration](references/video-config.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, code, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown guidance with JSON payloads, shell commands, and Python or PowerShell examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include generated asset URLs, thumbnail display links, task IDs, progress/status summaries, and deletion confirmation details.]\n\n## Skill Version(s):\n\n1.0.8 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.8:evals/evals.json\n\n{\n  \"skill_name\": \"aicraft-skill\",\n  \"evals\": [\n    {\n      \"id\": 1,\n      \"prompt\": \"我是做电商的，想给我的连衣裙商品生成几张展示图，背景要白色，请问有什么推荐的工具？\",\n      \"expected_output\": \"应该识别出电商作图需求，推荐使用爱创AI平台，解释可用的图片生成功能（如商品图、自由创作等），并引导获取token\",\n      \"files\": []\n    },\n    {\n      \"id\": 2,\n      \"prompt\": \"我想给我的T恤商品做一个15秒的抖音带货视频，需要怎么操作？\",\n      \"expected_output\": \"应该识别出视频生成需求，推荐使用爱创AI的视频生成功能，解释视频配置选项（通道/比例/时长/类型等），并引导获取token\",\n      \"files\": []\n    },\n    {\n      \"id\": 3,\n      \"prompt\": \"我已经有爱创的token了，帮我查一下还剩多少积分\",\n      \"expected_output\": \"应该调用积分查询API，返回用户的剩余积分信息\",\n      \"files\": []\n    },\n    {\n      \"id\": 4,\n      \"prompt\": \"我有一张模特照片和一件新衣服的图片，想看一下模特穿这件衣服的效果\",\n      \"expected_output\": \"应该识别出AI试衣需求，推荐使用AI试衣功能，解释需要上传两张图片（模特+衣服），并引导获取token\",\n      \"files\": []\n    },\n    {\n      \"id\": 5,\n      \"prompt\": \"我想给我的无线洗地机产品生成一套电商详情页，需要什么流程？\",\n      \"expected_output\": \"应该识别出AI详情图生成需求，推荐使用爱创AI的详情图功能，解释流程：上传产品图→选择模块→AI生成规划→确认生成→下载详情图，并告知积分消耗（15积分/张）\",\n      \"files\": []\n    },\n    {\n      \"id\": 6,\n      \"prompt\": \"我有一批参考设计图，想让AI按照这些风格给我的新产品生成图片\",\n      \"expected_output\": \"应该识别出风格复刻需求，推荐使用爱创AI的风格复刻功能，解释需要上传参考设计图和产品图，选择比例和组数，并告知积分消耗（参考图数量×组数×15积分）\",\n      \"files\": []\n    },\n    {\n      \"id\": 7,\n      \"prompt\": \"我想查看我之前在爱创AI上生成的所有图片\",\n      \"expected_output\": \"应该识别出资产管理需求，推荐使用爱创AI的资产管理功能，调用Asset/Search查询assetType为IMAGE的资产列表\",\n      \"files\": []\n    },\n    {\n      \"id\": 8,\n      \"prompt\": \"帮我删除爱创AI上那些失败的风格复刻作品\",\n      \"expected_output\": \"应该识别出资产删除需求，先调用Asset/Search查询StyleReplication类型的资产，筛选状态为失败的，再调用Asset/BatchDelete批量删除\",\n      \"files\": []\n    }\n  ]\n}\n\nArchive v1.0.7: 6 files, 16224 bytes\n\nFiles: evals/evals.json (2711b), references/image-modes.md (7640b), references/video-config.md (3155b), skill-card.md (2395b), SKILL.md (31213b), _meta.json (132b)\n\nFile v1.0.7:SKILL.md\n\n---\nname: aicraft-skill\ndescription: >\n    爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能：\n\n    - 电商作图、商品图生成、主图套图、详情图制作\n    - AI生成图片、AI绘画、AI作图、Agent模式智能生成\n    - AI试衣、AI试鞋、AI试戴、虚拟试穿\n    - 商品精修、去水印、商品换色、服装去皱\n    - 图片翻译、商品替换背景、商品平铺图\n    - 换姿势、换表情、去牛皮癣/去除杂物\n    - AI视频生成、商品讲解视频、带货视频、短视频制作\n    - AI详情图生成、商品详情页、详情页规划\n    - 风格复刻、风格迁移、参考图风格生成\n    - 资产管理、素材管理、历史作品查看/下载/删除\n    - 提到\"爱创\"、\"51aic\"、\"aicraft\"、\"大泽AI\"\n    - 任何需要上传图片进行AI处理/编辑/生成的电商场景\n\n    此技能帮助用户通过爱创AI平台的API完成图片生成、视频生成、图片编辑、详情图生成、风格复刻、资产管理等任务。\n    支持18种图片生成模式、AI视频生成、AI详情图生成、风格复刻和资产管理。\n---\n\n# 爱创 AI 平台技能\n\n## 概述\n\n爱创 AI 平台（https://www.51aic.com?source=agents）是面向电商商家的AI内容创作平台，提供AI图片生成、AI视频生成、AI详情图生成、风格复刻、商品精修、虚拟试穿等全场景AI作图功能。\n\n本技能允许用户在 AI 对话中直接调用爱创 AI 平台的服务，无需手动访问网页。\n\n## 认证流程\n\n**所有 API 调用都需要用户的 token。**\n\n如果用户没有提供过 token，按以下步骤引导用户获取：\n\n1. 请用户打开浏览器访问 https://www.51aic.com/openclaw?source=agents\n2. 点击右上角登录（支持手机号验证码或微信扫码）\n3. 登录成功后，页面会自动显示当前 token\n4. 点击「复制 token」按钮，将 token 复制到剪贴板\n5. 将复制的 token 粘贴到对话中\n\n> **安全提示**：token 是用户的登录凭证，请勿在公共对话中分享。对话中的 token 仅在当前会话有效。\n\n获取到 token 后，保存到上下文中，后续所有 API 调用自动使用。\n\n## API 基础配置\n\n```\n主 API 地址:    https://aicraft.51aic.com\n文件上传地址:   https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\n图片 CDN:      https://oss.fzputi.com/\n```\n\n所有请求需要在 HTTP Header 中携带：`Token: <用户token>`\n\n## 核心能力\n\n### 1. 图片上传\n\n如果用户提供了本地图片文件，需要先上传到平台 OSS。\n\n**上传逻辑：**\n\n1. 读取图片文件，转为 base64 编码\n2. 拼接成 `data:image/jpeg;base64,...` 格式\n3. 生成 OSS 路径：`tools/aiCraft/1m/YYYYMMDD/<uuid>.<ext>`\n4. POST 到上传接口\n\n**macOS/Linux：**\n\n```bash\nFILE_PATH=\"<图片路径>\"\nB64=$(openssl base64 -in \"$FILE_PATH\" | tr -d '\\n')\nEXT=\"${FILE_PATH##*.}\"\n[ \"$EXT\" = \"jpeg\" ] && EXT=\"jpg\"\nUUID=$(uuidgen | tr '[:upper:]' '[:lower:]' | tr -d '-')\nDATE=$(date +%Y%m%d)\nMIME=\"image/$EXT\"\n[ \"$EXT\" = \"jpg\" ] && MIME=\"image/jpeg\"\n\ncurl -s -X POST \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d \"{\\\"ossFilePath\\\":\\\"tools/aiCraft/1m/$DATE/$UUID.$EXT\\\",\\\"fileBase64\\\":\\\"data:$MIME;base64,$B64\\\"}\"\n```\n\n**Windows：**\n\n```powershell\n$FilePath = \"<图片路径>\"\n$B64 = [Convert]::ToBase64String([IO.File]::ReadAllBytes($FilePath))\n$Ext = [System.IO.Path]::GetExtension($FilePath).TrimStart('.')\nif ($Ext -eq \"jpeg\") { $Ext = \"jpg\" }\n$UUID = [Guid]::NewGuid().ToString().Replace(\"-\", \"\").ToLower()\n$Date = Get-Date -Format \"yyyyMMdd\"\n$MIME = \"image/$Ext\"\nif ($Ext -eq \"jpg\") { $MIME = \"image/jpeg\" }\n\n$Body = @{\n    ossFilePath = \"tools/aiCraft/1m/$Date/$UUID.$Ext\"\n    fileBase64 = \"data:$MIME;base64,$B64\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n上传成功后会返回 `https://oss.fzputi.com/...` 的 URL，用于后续生成请求。\n\n### 2. 图片生成（18 种模式）\n\n支持 18 种图片生成模式，详见 [references/image-modes.md](references/image-modes.md)。\n\n**Agent 模式**（首选推荐）：AI 智能体辅助生成，上传参考图后 AI 自主分析意图、制定方案并生成优化图片。这是平台前端的默认首屏模式，交互最自然、智能程度最高。\n\n当用户没有明确指定具体功能模式时（如 AI 试衣、去水印等），**优先引导用户使用 Agent 模式**：上传参考图 → 描述需求 → AI 分析生成。\n\nAgent 模式**只能**通过 SSE 流式接口 `Task/GenerateAgentImageStream` 调用，参数为 `conversationId`、`imageUrls`（参考图URL数组）、`des`（prompt）、`ratio`、`taskJobId`，流式返回思考过程（意图分析→方案制定→生成结果）。不支持 `Task/Publish`。\n\n其他常用模式：\n\n-   **自由创作**：通用图片生成，上传参考图并描述需求即可\n\nAPI 端点：`POST https://aicraft.51aic.com/api/v1/Task/Publish`\n\n> **业务规则（重要）**：提交生成任务时，必须先查询并复用现有的 `conversationId`，**一律不创建新的 conversation（批次）**。这样能保证所有记录在同一个会话下，查询历史时不会断档。\n>\n> 查询方式：`POST /api/v1/Conversation/Search`（projectType: IMAGE/VIDEO，按 lastMessageAt 倒序取第一条）\n\n> **prompt 字段规则（重要）**：\n>\n> -   **Agent 模式 / 自由创作**：prompt 由用户自定义，是核心必填参数，描述想要什么图片\n> -   **其他 16 种模式**（如 AI 试衣、去水印等）：有**固定的默认 prompt**（详见 [references/image-modes.md](references/image-modes.md)），不可为空，否则任务发布会失败（code: 999）\n> -   部分模式（如换色、翻译、换表情）的 prompt 包含动态参数（颜色、语言、表情等），需要根据用户选择填充\n\n请求体示例（自由创作）：\n\n```json\n{\n    \"conversationId\": \"\",\n    \"projectType\": \"IMAGE\",\n    \"mode\": 1,\n    \"type\": 2,\n    \"payload\": {\n        \"aspectRatio\": \"auto\",\n        \"count\": 1,\n        \"prompt\": \"一件红色连衣裙，白色背景，电商商品图\",\n        \"sceneMode\": \"free_creation\",\n        \"referenceImages\": [{ \"key\": \"images\", \"index\": 0, \"url\": \"https://oss.fzputi.com/...\", \"description\": \"\" }]\n    }\n}\n```\n\n### 3. AI 详情图生成\n\n上传产品图，AI 自动分析并生成完整的电商商品详情页（含多张详情图）。\n\n**流程：**\n\n1. 创建批次 → AI 分析产品并生成详情页规划方案\n2. 用户确认/编辑规划方案（可选）\n3. 生成详情图 → 按模块逐张生成\n4. 查询结果和下载\n\n**核心 API：**\n\n-   `POST /api/v1/DetailImage/CreateBatch` — 创建详情图批次，AI 生成规划方案\n-   `POST /api/v1/DetailImage/GenerateBatchImages` — 确认规划后，生成详情图\n-   `POST /api/v1/DetailImage/GetBatchDetail` — 查询批次详情和规划方案\n-   `POST /api/v1/DetailImage/GetBatchTaskResults` — 查询生成结果\n-   `POST /api/v1/DetailImage/GetImageTasksProgress` — 查询任务进度\n-   `POST /api/v1/DetailImage/RemakeImage` — 重新生成单张图\n\n**CreateBatch 参数：**\n\n```json\n{\n    \"batchId\": \"\", // 首次创建为空，复刻时传入旧batchId\n    \"productInfo\": \"无线智能洗地机，集吸尘拖地自清洁于一体...\", // 产品信息描述\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"], // 产品图，1-6张\n    \"language\": \"简体中文\", // 语言：简体中文/繁体中文/英语/日语/韩语/德语/法语/阿拉伯语/俄语/泰语/印尼语/越南语/马来语/西班牙语/葡萄牙语/巴西葡萄牙语\n    \"aspectRatio\": \"3:4\", // 尺寸比例\n    \"moduleKeys\": [\"header\", \"product_showcase\", \"selling_points\"] // 选择的详情页模块\n}\n```\n\n**可用尺寸比例：** `1:1`, `2:3`, `3:2`, `3:4`（默认）, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9`\n\n**可用语言：** 简体中文、繁体中文、英语、日语、韩语、德语、法语、阿拉伯语、俄语、泰语、印尼语、越南语、马来语、西班牙语、葡萄牙语、巴西葡萄牙语\n\n**模块列表**（通过 `GET /api/v1/Template/GetDetailImageModules` 获取，各模块有名称、描述、示例图）：\n\n-   模块是详情页的标准组成部分（如首图、产品展示、卖点、参数、使用场景等）\n-   每个模块有 `key`、`displayName`、`description`、`sampleImageUrls`\n-   部分模块默认选中\n-   用户多选，至少保留 1 个模块\n\n**积分消耗：** 每张详情图 **15 积分**，总积分 = 选中模块数量 × 15\n\n**状态流转：**\n\n-   `plan_pending` → `planning`（AI 生成规划中） → `plan_completed`（规划完成，待生成） → `image_generating`（生成中） → `completed` / `failed` / `partial_completed`\n\n### 4. 风格复刻\n\n上传参考设计图和产品图，AI 学习参考图的风格并应用到产品上，生成风格一致的新图片。\n\n**核心 API：**\n\n-   `POST /api/v1/StyleReplication/CreateBatch` — 创建风格复刻批次\n-   `POST /api/v1/StyleReplication/RetryImage` — 重新生成单张图\n-   `POST /api/v1/DetailImage/GetBatchProgress` — 查询批次进度\n-   `POST /api/v1/DetailImage/GetBatchTaskResults` — 查询批次结果\n-   `POST /api/v1/DetailImage/GetImageTasksProgress` — 查询图片任务进度\n\n**CreateBatch 参数：**\n\n```json\n{\n    \"batchId\": \"\", // 首次创建为空\n    \"styleReferenceImageUrls\": [\"https://oss.fzputi.com/...\"], // 参考设计图（风格来源），最多16张\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"], // 产品素材图，最多6张\n    \"aspectRatio\": \"1:1\", // 尺寸比例\n    \"generateCount\": 1, // 生成组数：1-3\n    \"detailRequirements\": \"添加新品上市文字，使用金色渐变风格...\" // 补充要求（prompt，可为null）\n}\n```\n\n**可用尺寸比例：** `1:1`, `2:3`, `3:2`, `3:4`, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9`\n\n**积分消耗：** 每张图 **15 积分**，总积分 = 参考图数量 × 组数 × 15\n\n**状态流转：**\n\n-   `plan_pending` → `planning` → `plan_completed` → `image_generating` → `completed` / `failed` / `partial_completed`\n\n### 5. 视频生成\n\n支持商品讲解视频、带货视频、促销视频等多种类型。\n\nAPI 端点：`POST https://aicraft.51aic.com/api/v1/Task/Publish`\n\n配置参数详见 [references/video-config.md](references/video-config.md)。\n\n请求体示例（新手模式）：\n\n```json\n{\n    \"conversationId\": \"\",\n    \"projectType\": \"VIDEO\",\n    \"mode\": 1,\n    \"type\": 1,\n    \"payload\": {\n        \"prompt\": \"介绍这款红色连衣裙的优点\",\n        \"duration\": 10,\n        \"orientation\": \"9:16\",\n        \"size\": \"large\",\n        \"language\": \"0\",\n        \"videoType\": \"2\",\n        \"videoChannel\": \"stable\",\n        \"images\": [\"https://oss.fzputi.com/...\"]\n    }\n}\n```\n\n### 6. 资产管理\n\n查询和管理用户的历史生成作品（图片、视频、详情图、风格复刻）。\n\n**核心 API：**\n\n-   `POST /api/v1/Asset/Search` — 查询资产列表\n-   `POST /api/v1/Asset/BatchDelete` — 批量删除资产\n\n**资产类型 (assetType)：**\n| 类型值 | 说明 |\n|--------|------|\n| `IMAGE` | AI 作图（单图生成） |\n| `VIDEO` | AI 视频 |\n| `DETAILIMAGE` | AI 详情图 |\n| `StyleReplication` | 风格复刻 |\n\n**Search 参数：**\n\n```json\n{\n    \"pageIndex\": 1,\n    \"pageSize\": 40,\n    \"assetType\": \"IMAGE\",\n    \"sortField\": \"createTime\",\n    \"sortType\": \"desc\",\n    \"startTime\": \"2024-01-01\", // 可选\n    \"endTime\": \"2024-01-02\" // 可选\n}\n```\n\n**返回字段：**\n\n```json\n{\n  \"assetId\": \"xxx\",\n  \"fileUrl\": \"https://oss.fzputi.com/...\",\n  \"thumbnailUrl\": \"https://oss.fzputi.com/...?x-oss-process=image/resize,w_530\",\n  \"width\": 1024,\n  \"height\": 1024,\n  \"createdAt\": \"2024-01-01T12:00:00\",\n  \"extra\": {\n    \"referenceImages\": [...],\n    \"prompt\": \"...\",\n    \"sceneMode\": \"...\",\n    \"aspectRatio\": \"...\"\n  }\n}\n```\n\n### 7. 查询任务状态\n\n生成任务提交后，返回 `taskJobId` 和 `conversationId`。可通过以下接口查询任务进度：\n\n-   **任务进度**: `POST /api/v1/Task/GetProgress`（支持批量查询，见下方 API 调用参考）\n-   **详情图/风格复刻进度**: `POST /api/v1/DetailImage/GetImageTasksProgress`\n\n### 8. 查询积分\n\n积分查询需要**两步认证**：\n\n1. **获取支付认证 token**：用用户 token 调用 `/api/v1/PayPackage/GetToken`（body: `{\"appType\": 6}`），返回 `authorization`\n2. **查询积分**：用 `authorization` 作为 `Authorization` header，访问支付 API `https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType`\n\n返回用户的剩余积分（会员积分 + 套餐积分）。\n\n> **authorization 缓存**：有效期约 2 小时。在同一次对话中获取后**可复用**，不需要每次查积分都重新调用 GetToken。如后续调用返回 401，再重新获取。\n>\n> 注意：支付 API 与主 API 使用不同的认证机制。如果用户未主动要求查积分，可跳过此步骤，直接引用下方的积分消耗参考表告知用户大致消耗。\n\n## 使用流程\n\n### 图片生成流程\n\n1. 确认用户已提供 token（如未提供，引导获取）\n2. **默认推荐 Agent 模式**：询问用户想要生成什么图片，引导上传参考图并描述需求\n    - 如用户只是泛化描述（\"帮我做张商品图\"、\"生成海报\"），按 Agent 模式处理：收集参考图 + 需求描述\n    - 如用户明确指定了具体功能模式（如 AI 试衣、去水印、换色等），切换到对应模式并使用其默认 prompt\n3. **确认 prompt**：\n    - Agent/自由创作：由用户描述需求生成 prompt（核心必填参数）\n    - 其他 16 种模式：使用对应模式的**默认 prompt**（见 [references/image-modes.md](references/image-modes.md)），如用户有特殊需求可在此基础上调整\n    - 部分模式（换色/翻译/换表情等）需要额外确认动态参数（颜色/语言/表情等）\n4. 询问参考图片\n5. 如有本地图片，先调用上传接口\n6. 构建并发送 Publish 请求\n7. 返回任务提交结果，告知用户可在 https://www.51aic.com/image/history?source=agents 查看\n\n### 视频生成流程\n\n1. 确认用户已提供 token\n2. 询问视频类型（商品讲解/带货/促销等）\n3. 询问参考图片和提示词\n4. 确认视频配置（通道/比例/清晰度/时长/语言）\n5. 如有本地图片，先调用上传接口\n6. 构建并发送 Publish 请求\n7. 返回任务提交结果\n\n### AI 详情图生成流程\n\n1. 确认用户已提供 token\n2. 请用户上传产品图（1-6 张）\n3. 询问产品信息描述（可选，也可使用 AI 帮写自动生成）\n4. 确认语言和尺寸比例（默认：简体中文 + 3:4）\n5. 获取模块列表，让用户选择需要的详情页模块\n6. 告知积分消耗：模块数量 × 15 积分\n7. 调用 `DetailImage/CreateBatch` 创建批次\n8. AI 生成规划方案（约需几十秒），轮询 `GetBatchDetail` 等待 `plan_completed`\n9. 规划完成后，向用户展示方案（模块列表和整体设计规范）\n10. 用户确认后，调用 `DetailImage/GenerateBatchImages` 生成详情图\n11. 轮询 `GetImageTasksProgress` 查询进度，完成后展示结果\n\n### 风格复刻流程\n\n1. 确认用户已提供 token\n2. 请用户上传参考设计图（风格来源，最多 16 张）\n3. 请用户上传产品素材图（最多 6 张）\n4. 确认尺寸比例和生成组数（1-3 组，默认 1 组）\n5. 询问补充要求（prompt，可选）\n6. 告知积分消耗：参考图数量 × 组数 × 15 积分\n7. 调用 `StyleReplication/CreateBatch` 创建批次\n8. 轮询 `DetailImage/GetBatchProgress` 查询进度\n9. 完成后展示结果\n\n### 资产管理流程\n\n1. 确认用户已提供 token\n2. 询问要查询的资产类型（图片/视频/详情图/风格复刻）\n3. 可选：确认日期范围、排序方式\n4. 调用 `Asset/Search` 查询\n5. 展示资产列表，支持告知下载链接\n6. 如用户要求删除，调用 `Asset/BatchDelete`\n\n## 积分消耗参考\n\n| 功能                             | 积分消耗                        |\n| -------------------------------- | ------------------------------- |\n| 图片生成（自由创作等大多数模式） | 5 积分/张                       |\n| 主图套图                         | 25 积分/套（5 张）              |\n| AI 详情图                        | 15 积分/张（按模块数量计）      |\n| 风格复刻                         | 15 积分/张（参考图数量 × 组数） |\n| 视频生成（stable 5 秒）          | 150 积分                        |\n| 视频生成（stable 10 秒）         | 200 积分                        |\n| 视频生成（stable 15 秒）         | 260 积分                        |\n| 视频生成（fast 5 秒）            | 100 积分                        |\n| 视频生成（fast 10 秒）           | 150 积分                        |\n| 视频生成（fast 15 秒）           | 200 积分                        |\n| AI 优质帮写视频脚本              | 2 积分                          |\n| 产品分析（AI 帮写）              | 1 积分                          |\n\n在提交生成任务前，可引用上表告知用户所需积分。如用户明确要求查当前余额，再执行积分查询（需要两步认证，见\"查询积分\"部分）。如积分不足，告知用户需要充值。\n\n## 错误处理\n\n常见错误及处理方式：\n\n| 错误码   | 含义              | 处理方式                                                                                                                    |\n| -------- | ----------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| 401      | Token 无效或过期  | 引导用户重新获取 token                                                                                                      |\n| 999      | 任务发布失败      | 常见原因：① prompt 为空或不符合模式要求（非 Agent/自由创作模式必须使用默认 prompt）；② 参数格式错误。检查 prompt 和各字段值 |\n| 积分不足 | 积分不够生成      | 告知用户当前积分和所需积分                                                                                                  |\n| 上传失败 | 图片格式/大小不符 | 检查图片格式(jpg/png/webp)和大小(≤10MB)                                                                                     |\n\n## API 调用参考\n\n以下是用 exec 工具直接调用 API 的示例。**macOS/Linux 用 `curl`，Windows 用 PowerShell `Invoke-RestMethod`**。\n\n调用前需确保已在 Header 中携带 `Token: <用户token>`。\n\n### 查询积分（两步认证，authorization 可复用约 2 小时）\n\n**Step 1 — 获取支付认证 token：**\n\n**macOS/Linux：**\n\n```bash\nAUTH=$(curl -s -X POST \"https://aicraft.51aic.com/api/v1/PayPackage/GetToken\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"appType\": 6}' | grep -o '\"result\":\"[^\"]*\"' | sed 's/\"result\":\"//;s/\"$//')\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"appType\": 6}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\n$AuthRes = Invoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/PayPackage/GetToken\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n$AUTH = $AuthRes.result\n```\n\n**Step 2 — 查询积分余额：**\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Authorization: $AUTH\" \\\n  -d '{\"ValueAddedServicesType\": 4}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"ValueAddedServicesType\": 4}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Authorization\"=$AUTH} -Body $BodyBytes\n```\n\n### 查询会话 ID（复用现有批次）\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Conversation/Search\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"projectType\": \"IMAGE\", \"pageIndex\": 1, \"pageSize\": 1, \"sortField\": \"lastMessageAt\", \"sortType\": \"desc\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"projectType\": \"IMAGE\", \"pageIndex\": 1, \"pageSize\": 1, \"sortField\": \"lastMessageAt\", \"sortType\": \"desc\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Conversation/Search\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 发布图片生成任务\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/Publish\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"conversationId\": \"<会话ID>\",\n    \"projectType\": \"IMAGE\",\n    \"mode\": 1,\n    \"type\": 2,\n    \"payload\": {\n      \"aspectRatio\": \"auto\",\n      \"count\": 1,\n      \"prompt\": \"一件红色连衣裙，白色背景，电商商品图\",\n      \"sceneMode\": \"free_creation\",\n      \"referenceImages\": []\n    }\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    conversationId = \"<会话ID>\"\n    projectType = \"IMAGE\"\n    mode = 1\n    type = 2\n    payload = @{\n        aspectRatio = \"auto\"\n        count = 1\n        prompt = \"一件红色连衣裙，白色背景，电商商品图\"\n        sceneMode = \"free_creation\"\n        referenceImages = @()\n    }\n} | ConvertTo-Json -Depth 5\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/Publish\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 发布视频生成任务\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/Publish\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"conversationId\": \"<会话ID>\",\n    \"projectType\": \"VIDEO\",\n    \"mode\": 1,\n    \"type\": 1,\n    \"payload\": {\n      \"prompt\": \"介绍这款红色连衣裙的优点\",\n      \"duration\": 10,\n      \"orientation\": \"9:16\",\n      \"size\": \"large\",\n      \"language\": \"0\",\n      \"videoType\": \"2\",\n      \"videoChannel\": \"stable\",\n      \"images\": [\"https://oss.fzputi.com/...\"]\n    }\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    conversationId = \"<会话ID>\"\n    projectType = \"VIDEO\"\n    mode = 1\n    type = 1\n    payload = @{\n        prompt = \"介绍这款红色连衣裙的优点\"\n        duration = 10\n        orientation = \"9:16\"\n        size = \"large\"\n        language = \"0\"\n        videoType = \"2\"\n        videoChannel = \"stable\"\n        images = @(\"https://oss.fzputi.com/...\")\n    }\n} | ConvertTo-Json -Depth 5\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/Publish\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 查询任务进度\n\n提交任务后返回 `taskJobId`。可通过 `Task/GetProgress` 查询任务状态，支持一次查多个。\n\n-   图片任务 `taskType`: `2`\n-   视频任务 `taskType`: `1`\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/GetProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"conditions\":[{\"taskJobId\":\"<任务ID>\",\"taskType\":2}]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"conditions\":[{\"taskJobId\":\"<任务ID>\",\"taskType\":2}]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/GetProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 创建批次\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/CreateBatch\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"batchId\": \"\",\n    \"productInfo\": \"无线智能洗地机，集吸尘拖地自清洁于一体\",\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"],\n    \"language\": \"简体中文\",\n    \"aspectRatio\": \"3:4\",\n    \"moduleKeys\": [\"header\", \"product_showcase\", \"selling_points\"]\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    batchId = \"\"\n    productInfo = \"无线智能洗地机，集吸尘拖地自清洁于一体\"\n    productImageUrls = @(\"https://oss.fzputi.com/...\")\n    language = \"简体中文\"\n    aspectRatio = \"3:4\"\n    moduleKeys = @(\"header\", \"product_showcase\", \"selling_points\")\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/CreateBatch\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 生成图片\n\n规划方案确认后调用：\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GenerateBatchImages\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchid\": \"<batchId>\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchid\": \"<batchId>\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GenerateBatchImages\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 查询批次详情\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchDetail\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchId\": \"<batchId>\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchId\": \"<batchId>\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchDetail\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 查询任务进度\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetImageTasksProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"type\": 1, \"taskIds\": [\"<taskId1>\", \"<taskId2>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"type\": 1, \"taskIds\": [\"<taskId1>\", \"<taskId2>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetImageTasksProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 风格复刻 — 创建批次\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/StyleReplication/CreateBatch\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"batchId\": \"\",\n    \"styleReferenceImageUrls\": [\"https://oss.fzputi.com/ref1.jpg\"],\n    \"productImageUrls\": [\"https://oss.fzputi.com/prod1.jpg\"],\n    \"aspectRatio\": \"1:1\",\n    \"generateCount\": 1,\n    \"detailRequirements\": \"使用金色渐变风格，添加促销标签\"\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    batchId = \"\"\n    styleReferenceImageUrls = @(\"https://oss.fzputi.com/ref1.jpg\")\n    productImageUrls = @(\"https://oss.fzputi.com/prod1.jpg\")\n    aspectRatio = \"1:1\"\n    generateCount = 1\n    detailRequirements = \"使用金色渐变风格，添加促销标签\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/StyleReplication/CreateBatch\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 风格复刻 — 查询批次进度\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchIds\": [\"<batchId>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchIds\": [\"<batchId>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 资产管理 — 查询资产\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Asset/Search\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"pageIndex\": 1,\n    \"pageSize\": 40,\n    \"assetType\": \"IMAGE\",\n    \"sortField\": \"createTime\",\n    \"sortType\": \"desc\"\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    pageIndex = 1\n    pageSize = 40\n    assetType = \"IMAGE\"\n    sortField = \"createTime\"\n    sortType = \"desc\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Asset/Search\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 资产管理 — 批量删除\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Asset/BatchDelete\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"assetIds\": [\"<assetId1>\", \"<assetId2>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"assetIds\": [\"<assetId1>\", \"<assetId2>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Asset/BatchDelete\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn79mgfe1sbe8ts4669xy41nq9845fx2\",\n  \"slug\": \"aicraft-skill\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1781006643067\n}\n\nFile v1.0.7:references/image-modes.md\n\n# 图片生成模式详解\n\n爱创AI平台支持18种图片生成模式，每种模式对应不同的 `sceneMode` 值和参数要求。\n\n## 重要提示\n\n### prompt 字段规则\n\n大多数模式**必须有 prompt**，且不同模式有固定的默认 prompt。如果 prompt 为空或不符合模式要求，任务会发布失败（code: 999）。\n\n- **Agent模式 / 自由创作**: prompt 由用户自定义描述，是核心参数\n- **其他16种模式**: 有预设的默认 prompt（见各模式说明），通常不需要用户额外输入\n- 部分模式的 prompt 中包含动态参数（如颜色、语言、表情等），需要根据实际情况填充\n\n## 模式列表\n\n### 1. Agent模式 (agent) ⭐ 首选推荐\n- **sceneMode**: `agent_image`\n- **说明**: AI智能体辅助图片生成，上传参考图后由AI自主分析意图、制定方案并生成优化后的图片。支持流式进度反馈（思考中→分析意图→制定方案→生成中）。**平台默认首屏模式**，当用户没有明确指定具体功能模式时，优先推荐使用此模式。\n- **参考图**: 最多10张（建议至少上传1张让AI分析）\n- **参数**: `prompt`（用户自定义需求描述）\n- **积分**: 5积分/张\n- **API 说明**: 前端使用 SSE 流式接口 `Task/GenerateAgentImageStream`，参数：`conversationId`、`imageUrls`（参考图URL数组）、`des`（prompt）、`ratio`（比例）、`taskJobId`。流式返回 `status_change`（状态更新）→ `task_intention`（意图分析）→ `task_plan`（方案制定）→ `task_info`（生成结果，含 `image_length`）→ `workflow_finish`（工作流完成）。出错时返回 `task_error`。如无需流式体验，也可用 `Task/Publish` + `sceneMode: free_creation` 获得类似的图片生成效果。\n\n### 2. 自由创作 (freestyle)\n- **sceneMode**: `free_creation`\n- **说明**: 最通用的图片生成模式，上传参考图并描述需求即可生成\n- **参考图**: 最多10张\n- **参数**: `prompt`, `referenceImages`\n- **默认 prompt**: 用户自定义（必填，描述想要什么图片）\n- **积分**: 5积分/张\n\n### 3. 商品图 (product-image)\n- **sceneMode**: `product_image`\n- **说明**: 专为电商商品展示设计，生成高质量商品图\n- **参考图**: 需要上传商品照片\n- **参数**: `prompt`, `referenceImages`\n- **默认 prompt**: `生成专业商品图。`\n\n### 4. 主图套图 (main-picture)\n- **sceneMode**: `main_image_set`\n- **说明**: 生成电商主图套图（通常包含5张不同角度/场景的图片）\n- **积分**: 25积分/套（5张）\n- **参考图**: 需要上传商品照片\n- **默认 prompt**: `基于上传参考图，生成一套5张的主图套图`\n\n### 5. AI试衣 (try-clothes)\n- **sceneMode**: `ai_try_on_clothes`\n- **说明**: 将衣服虚拟穿到模特身上\n- **默认 prompt**: `将上传的服饰自然穿在模特身上。`\n- **参考图**:\n  - 第一组 (`images`): **衣服照片（必填）**，最多2张\n  - 第二组 (`images2`): 模特照片（**可选**），最多1张。如不填，平台使用默认模特\n\n### 6. AI试鞋 (try-shoes)\n- **sceneMode**: `ai_try_on_shoes`\n- **说明**: 将鞋子虚拟穿到模特脚上\n- **默认 prompt**: `将鞋子自然穿在脚部姿势上。`\n- **参考图**:\n  - 第一组 (`images`): **鞋子照片（必填）**\n  - 第二组 (`images2`): 试鞋姿势图（**可选**），最多1张\n\n### 7. 商品换色 (product-recolor)\n- **sceneMode**: `product_recolor`\n- **说明**: 改变商品的颜色\n- **默认 prompt**: `将商品主体颜色更改为【{目标颜色}】`\n- **参考图**: 商品照片\n- **额外参数**: 需要在 prompt 中指定目标颜色，如 `将商品主体颜色更改为【红色】`\n\n### 8. 去除水印 (remove-watermark)\n- **sceneMode**: `remove_watermark`\n- **说明**: 去除图片中的水印\n- **默认 prompt**: `去除图片中的水印。`\n- **参考图**: 带水印的图片\n\n### 9. 手持商品 (handheld-product)\n- **sceneMode**: `handheld_product`\n- **说明**: 生成模特手持商品的图片\n- **默认 prompt**: `生成自然的手持商品图。`\n- **参考图**: 商品照片 + 可选的手部姿势参考\n\n### 10. AI试戴 (ai-try-on-accessories)\n- **sceneMode**: `ai_try_on_accessories`\n- **说明**: 虚拟试戴配饰（项链、耳环、眼镜等）\n- **默认 prompt**: `一键试戴。`\n- **参考图**: 模特照片 + 配饰照片\n\n### 11. 服装去皱 (clothes-dewrinkle)\n- **sceneMode**: `clothes_dewrinkle`\n- **说明**: 自动去除服装照片中的褶皱\n- **默认 prompt**: `抚平服装表面褶皱，去皱强度：【{强度}】`\n- **参考图**: 有褶皱的服装照片\n- **额外参数**: prompt 中需要指定去皱强度，如 `抚平服装表面褶皱，去皱强度：【强】`\n\n### 12. 去牛皮癣/去除杂物 (remove-noise)\n- **sceneMode**: `remove_psoriasis`\n- **说明**: 去除图片中的杂物、牛皮癣广告等\n- **默认 prompt**: `一键清除牛皮癣，还原干净画面。`\n- **参考图**: 需要清理的照片\n\n### 13. 图片翻译 (image-translate)\n- **sceneMode**: `image_translate`\n- **说明**: 翻译图片中的文字内容\n- **默认 prompt**: `识别图中文字并翻译成【{目标语言}】。`\n- **参考图**: 包含文字的图片\n- **额外参数**: prompt 中需要指定目标语言，如 `识别图中文字并翻译成【英语】。`\n\n### 14. 商品替换 (product-replace)\n- **sceneMode**: `product_replace`\n- **说明**: 将商品放入新的背景/场景中\n- **默认 prompt**: `用目标商品替换原图商品。`\n- **参考图**: 商品照片 + 可选的场景参考\n\n### 15. 商品平铺图 (product-flat-lay)\n- **sceneMode**: `product_flat_lay`\n- **说明**: 生成商品的平铺展示图\n- **默认 prompt**: `提取图中商品生成平铺图。`\n- **参考图**: 商品照片\n\n### 16. 换姿势 (pose-change)\n- **sceneMode**: `pose_change`\n- **说明**: 改变人物照片中的姿势\n- **默认 prompt**: `将人物从原姿势改为新姿势。`\n- **参考图**: 人物照片 + 目标姿势参考\n\n### 17. 换表情 (expression-change)\n- **sceneMode**: `expression_change`\n- **说明**: 改变人物照片中的表情\n- **默认 prompt**: `将人物表情自然替换为【{目标表情}】`\n- **参考图**: 人物照片\n- **额外参数**: prompt 中需要指定目标表情，如 `将人物表情自然替换为【微笑】`\n\n### 18. 商品精修 (product-retouch)\n- **sceneMode**: `product_retouch`\n- **说明**: 自动精修商品照片（调光、调色、锐化等）\n- **默认 prompt**: `精修图片。`\n- **参考图**: 商品照片\n- **⚠️ 注意**: 当前后端枚举值未完全对接，调用可能报错。建议优先使用其他模式。\n\n## 图片比例选项\n\n所有图片模式支持以下比例：\n\n| 比例 | 说明 |\n|------|------|\n| `auto` | 智能比例（默认） |\n| `1:1` | 正方形 |\n| `2:3` | 竖向 portrait |\n| `3:2` | 横向 landscape |\n| `3:4` | 竖向 portrait |\n| `9:16` | 竖向（短视频封面） |\n| `16:9` | 横向（横幅） |\n\n## 生成数量\n\n- Agent模式：不支持数量选择（固定1张）\n- 自由创作等大多数模式：1-4张\n- 主图套图：固定5张\n\n## 参考图数据结构\n\n```json\n{\n  \"referenceImages\": [\n    {\n      \"key\": \"images\",\n      \"index\": 0,\n      \"url\": \"https://oss.fzputi.com/...\",\n      \"description\": \"\"\n    }\n  ]\n}\n```\n\n对于需要两组图片的模式（如AI试衣），使用：\n```json\n{\n  \"referenceImages\": [\n    { \"key\": \"images\", \"index\": 0, \"url\": \"模特照片URL\", \"description\": \"\" },\n    { \"key\": \"images2\", \"index\": 0, \"url\": \"衣服照片URL\", \"description\": \"\" }\n  ]\n}\n```\n\nFile v1.0.7:references/video-config.md\n\n# 视频生成配置详解\n\n## 生成模式\n\n### 新手模式 (mode: 1)\n- 上传图片后，系统自动识别商品信息并生成脚本\n- 适合快速出视频\n- 额外消耗：脚本生成 2 积分\n\n### 专业模式 (mode: 2)\n- 上传图片后，系统生成多镜头分镜脚本（含镜头、台词、动作）\n- 适合精细控制视频内容\n- 额外消耗：脚本生成 2 积分\n\n## 视频通道 (videoChannel)\n\n**当前可用通道：**\n\n| 通道 | 值 | 时长选项 | 积分消耗 | 特点 |\n|------|-----|----------|----------|------|\n| 高稳通道 | `stable` | 10秒 / 15秒 | 150 / 200 | 稳定性极高，画面真实自然，适合电商爆款视频 |\n\n> 标准通道(`standard`)、增强通道(`enhanced`)、极速通道(`fast`) 当前已禁用。\n\n**新手模式总积分示例：**\n- stable 10秒 + 新手模式 = 150 + 2 = **152 积分**\n- stable 15秒 + 新手模式 = 200 + 2 = **202 积分**\n\n## 视频比例 (orientation)\n\n| 比例 | 值 | 适用平台 |\n|------|-----|----------|\n| 9:16 竖屏 | `9:16` | 抖音、快手等短视频平台（默认） |\n| 16:9 横屏 | `16:9` | B站、YouTube等横屏平台 |\n\n## 视频清晰度 (size)\n\n| 清晰度 | 值 | 说明 |\n|--------|-----|------|\n| 普清 | `small` | 标清画质，文件较小（默认） |\n| 高清 | `large` | 高清画质，推荐使用 |\n\n## 视频时长 (duration)\n\n- **stable 通道**: 10秒 或 15秒\n\n## 视频类型 (videoType)\n\n| 类型 | 值 | 说明 |\n|------|-----|------|\n| 商品推广 | `0` | 突出商品卖点和优势 |\n| 带货视频 | `1` | 直播带货风格 |\n| 商品讲解 | `2` | 详细介绍商品特点、功能和使用方法（默认） |\n| 商品促销 | `3` | 促销活动宣传 |\n| 商品测评 | `4` | 客观测评，优缺点分析 |\n| 商品口播 | `5` | 口播介绍类 |\n\n## 视频语言 (language)\n\n| 语言 | 值 |\n|------|-----|\n| 简体中文 | `0`（默认） |\n| 繁体中文 | `1` |\n| 英语 | `2` |\n| 泰语 | `3` |\n| 俄语 | `4` |\n| 越南语 | `5` |\n| 马来语 | `6` |\n| 葡萄牙语 | `7` |\n| 西班牙语 | `8` |\n\n## 默认配置推荐\n\n**电商商品讲解视频（新手模式）：**\n- mode: 1\n- videoChannel: `stable`\n- duration: 10\n- orientation: `9:16`\n- size: `large`\n- videoType: `2` (商品讲解)\n- language: `0` (简体中文)\n- 总积分：**152 积分**\n\n**电商商品讲解视频（专业模式）：**\n- mode: 2\n- videoChannel: `stable`\n- duration: 10\n- orientation: `9:16`\n- size: `large`\n- videoType: `2` (商品讲解)\n- language: `0` (简体中文)\n- 总积分：**150 积分**\n\n## API 请求示例\n\n```json\n{\n  \"conversationId\": \"\",\n  \"projectType\": \"VIDEO\",\n  \"mode\": 1,\n  \"type\": 1,\n  \"payload\": {\n    \"prompt\": \"介绍这款商品的优点和使用场景\",\n    \"duration\": 10,\n    \"orientation\": \"9:16\",\n    \"size\": \"large\",\n    \"language\": \"0\",\n    \"videoType\": \"2\",\n    \"videoChannel\": \"stable\",\n    \"images\": [\"https://oss.fzputi.com/...\"]\n  }\n}\n```\n\n## 响应示例\n\n```json\n{\n  \"code\": 200,\n  \"result\": {\n    \"conversationId\": \"xxx\",\n    \"taskJobId\": \"xxx\"\n  }\n}\n```\n\n任务提交后，用户可以在 https://www.51aic.com/video/history?source=agents 查看生成进度和结果。\n\nFile v1.0.7:skill-card.md\n\n## Description: <br>\nAicraft Skill helps agents use the 爱创 AI / 51aic ecommerce media APIs to create product images, videos, detail-page images, style-replication outputs, and manage generated assets. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[howerlin0329](https://clawhub.ai/user/howerlin0329) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal ecommerce merchants and their agents use this skill to generate and edit product media through 爱创 AI / 51aic, including product images, short product videos, detail-page imagery, style replication, virtual try-on, and asset lookup or deletion. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can use a user token to upload product images and call broad Aicraft/51aic APIs. <br>\nMitigation: Install only for intended ecommerce media workflows, keep the token private, and confirm which files will be uploaded before the agent sends them to the service. <br>\nRisk: The skill includes account-level asset deletion through batch delete APIs. <br>\nMitigation: Before deletion, require the agent to show the asset list and confirm the exact asset IDs or items to delete. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/howerlin0329/aicraft-skill) <br>\n- [Publisher Profile](https://clawhub.ai/user/howerlin0329) <br>\n- [51aic OpenClaw Token Page](https://www.51aic.com/openclaw?source=agents) <br>\n- [Image Modes Reference](references/image-modes.md) <br>\n- [Video Configuration Reference](references/video-config.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown guidance with JSON request examples and shell or PowerShell command snippets] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include API request payloads, generated media URLs, task status summaries, credit usage estimates, and asset lists.] <br>\n\n## Skill Version(s): <br>\n1.0.7 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.7:evals/evals.json\n\n{\n  \"skill_name\": \"aicraft-skill\",\n  \"evals\": [\n    {\n      \"id\": 1,\n      \"prompt\": \"我是做电商的，想给我的连衣裙商品生成几张展示图，背景要白色，请问有什么推荐的工具？\",\n      \"expected_output\": \"应该识别出电商作图需求，推荐使用爱创AI平台，解释可用的图片生成功能（如商品图、自由创作等），并引导获取token\",\n      \"files\": []\n    },\n    {\n      \"id\": 2,\n      \"prompt\": \"我想给我的T恤商品做一个15秒的抖音带货视频，需要怎么操作？\",\n      \"expected_output\": \"应该识别出视频生成需求，推荐使用爱创AI的视频生成功能，解释视频配置选项（通道/比例/时长/类型等），并引导获取token\",\n      \"files\": []\n    },\n    {\n      \"id\": 3,\n      \"prompt\": \"我已经有爱创的token了，帮我查一下还剩多少积分\",\n      \"expected_output\": \"应该调用积分查询API，返回用户的剩余积分信息\",\n      \"files\": []\n    },\n    {\n      \"id\": 4,\n      \"prompt\": \"我有一张模特照片和一件新衣服的图片，想看一下模特穿这件衣服的效果\",\n      \"expected_output\": \"应该识别出AI试衣需求，推荐使用AI试衣功能，解释需要上传两张图片（模特+衣服），并引导获取token\",\n      \"files\": []\n    },\n    {\n      \"id\": 5,\n      \"prompt\": \"我想给我的无线洗地机产品生成一套电商详情页，需要什么流程？\",\n      \"expected_output\": \"应该识别出AI详情图生成需求，推荐使用爱创AI的详情图功能，解释流程：上传产品图→选择模块→AI生成规划→确认生成→下载详情图，并告知积分消耗（15积分/张）\",\n      \"files\": []\n    },\n    {\n      \"id\": 6,\n      \"prompt\": \"我有一批参考设计图，想让AI按照这些风格给我的新产品生成图片\",\n      \"expected_output\": \"应该识别出风格复刻需求，推荐使用爱创AI的风格复刻功能，解释需要上传参考设计图和产品图，选择比例和组数，并告知积分消耗（参考图数量×组数×15积分）\",\n      \"files\": []\n    },\n    {\n      \"id\": 7,\n      \"prompt\": \"我想查看我之前在爱创AI上生成的所有图片\",\n      \"expected_output\": \"应该识别出资产管理需求，推荐使用爱创AI的资产管理功能，调用Asset/Search查询assetType为IMAGE的资产列表\",\n      \"files\": []\n    },\n    {\n      \"id\": 8,\n      \"prompt\": \"帮我删除爱创AI上那些失败的风格复刻作品\",\n      \"expected_output\": \"应该识别出资产删除需求，先调用Asset/Search查询StyleReplication类型的资产，筛选状态为失败的，再调用Asset/BatchDelete批量删除\",\n      \"files\": []\n    }\n  ]\n}\n\nArchive v1.0.6: 6 files, 16419 bytes\n\nFiles: evals/evals.json (2711b), references/image-modes.md (7546b), references/video-config.md (3155b), skill-card.md (2904b), SKILL.md (31292b), _meta.json (132b)\n\nFile v1.0.6:SKILL.md\n\n---\nname: aicraft-skill\ndescription: >\n    爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能：\n\n    - 电商作图、商品图生成、主图套图、详情图制作\n    - AI生成图片、AI绘画、AI作图、Agent模式智能生成\n    - AI试衣、AI试鞋、AI试戴、虚拟试穿\n    - 商品精修、去水印、商品换色、服装去皱\n    - 图片翻译、商品替换背景、商品平铺图\n    - 换姿势、换表情、去牛皮癣/去除杂物\n    - AI视频生成、商品讲解视频、带货视频、短视频制作\n    - AI详情图生成、商品详情页、详情页规划\n    - 风格复刻、风格迁移、参考图风格生成\n    - 资产管理、素材管理、历史作品查看/下载/删除\n    - 提到\"爱创\"、\"51aic\"、\"aicraft\"、\"大泽AI\"\n    - 任何需要上传图片进行AI处理/编辑/生成的电商场景\n\n    此技能帮助用户通过爱创AI平台的API完成图片生成、视频生成、图片编辑、详情图生成、风格复刻、资产管理等任务。\n    支持18种图片生成模式、AI视频生成、AI详情图生成、风格复刻和资产管理。\n---\n\n# 爱创 AI 平台技能\n\n## 概述\n\n爱创 AI 平台（https://www.51aic.com?source=agents）是面向电商商家的AI内容创作平台，提供AI图片生成、AI视频生成、AI详情图生成、风格复刻、商品精修、虚拟试穿等全场景AI作图功能。\n\n本技能允许用户在 AI 对话中直接调用爱创 AI 平台的服务，无需手动访问网页。\n\n## 认证流程\n\n**所有 API 调用都需要用户的 token。**\n\n如果用户没有提供过 token，按以下步骤引导用户获取：\n\n1. 请用户打开浏览器访问 https://www.51aic.com/openclaw?source=agents\n2. 点击右上角登录（支持手机号验证码或微信扫码）\n3. 登录成功后，页面会自动显示当前 token\n4. 点击「复制 token」按钮，将 token 复制到剪贴板\n5. 将复制的 token 粘贴到对话中\n\n> **安全提示**：token 是用户的登录凭证，请勿在公共对话中分享。对话中的 token 仅在当前会话有效。\n\n获取到 token 后，保存到上下文中，后续所有 API 调用自动使用。\n\n## API 基础配置\n\n```\n主 API 地址:    https://aicraft.51aic.com\n文件上传地址:   https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\n图片 CDN:      https://oss.fzputi.com/\n```\n\n所有请求需要在 HTTP Header 中携带：`Token: <用户token>`\n\n## 核心能力\n\n### 1. 图片上传\n\n如果用户提供了本地图片文件，需要先上传到平台 OSS。\n\n**上传逻辑：**\n\n1. 读取图片文件，转为 base64 编码\n2. 拼接成 `data:image/jpeg;base64,...` 格式\n3. 生成 OSS 路径：`tools/aiCraft/1m/YYYYMMDD/<uuid>.<ext>`\n4. POST 到上传接口\n\n**macOS/Linux：**\n\n```bash\nFILE_PATH=\"<图片路径>\"\nB64=$(openssl base64 -in \"$FILE_PATH\" | tr -d '\\n')\nEXT=\"${FILE_PATH##*.}\"\n[ \"$EXT\" = \"jpeg\" ] && EXT=\"jpg\"\nUUID=$(uuidgen | tr '[:upper:]' '[:lower:]' | tr -d '-')\nDATE=$(date +%Y%m%d)\nMIME=\"image/$EXT\"\n[ \"$EXT\" = \"jpg\" ] && MIME=\"image/jpeg\"\n\ncurl -s -X POST \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d \"{\\\"ossFilePath\\\":\\\"tools/aiCraft/1m/$DATE/$UUID.$EXT\\\",\\\"fileBase64\\\":\\\"data:$MIME;base64,$B64\\\"}\"\n```\n\n**Windows：**\n\n```powershell\n$FilePath = \"<图片路径>\"\n$B64 = [Convert]::ToBase64String([IO.File]::ReadAllBytes($FilePath))\n$Ext = [System.IO.Path]::GetExtension($FilePath).TrimStart('.')\nif ($Ext -eq \"jpeg\") { $Ext = \"jpg\" }\n$UUID = [Guid]::NewGuid().ToString().Replace(\"-\", \"\").ToLower()\n$Date = Get-Date -Format \"yyyyMMdd\"\n$MIME = \"image/$Ext\"\nif ($Ext -eq \"jpg\") { $MIME = \"image/jpeg\" }\n\n$Body = @{\n    ossFilePath = \"tools/aiCraft/1m/$Date/$UUID.$Ext\"\n    fileBase64 = \"data:$MIME;base64,$B64\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n上传成功后会返回 `https://oss.fzputi.com/...` 的 URL，用于后续生成请求。\n\n### 2. 图片生成（18 种模式）\n\n支持 18 种图片生成模式，详见 [references/image-modes.md](references/image-modes.md)。\n\n**Agent 模式**（首选推荐）：AI 智能体辅助生成，上传参考图后 AI 自主分析意图、制定方案并生成优化图片。这是平台前端的默认首屏模式，交互最自然、智能程度最高。\n\n当用户没有明确指定具体功能模式时（如 AI 试衣、去水印等），**优先引导用户使用 Agent 模式**：上传参考图 → 描述需求 → AI 分析生成。\n\nAgent 模式使用独立的 SSE 流式接口 `Task/GenerateAgentImageStream`，参数为 `conversationId`、`imageUrls`（参考图URL数组）、`des`（prompt）、`ratio`、`taskJobId`，流式返回思考过程（意图分析→方案制定→生成结果）。如无需流式体验，也可用 `Task/Publish` + `sceneMode: free_creation` 获得类似的图片生成效果。\n\n其他常用模式：\n\n-   **自由创作**：通用图片生成，上传参考图并描述需求即可\n\nAPI 端点：`POST https://aicraft.51aic.com/api/v1/Task/Publish`\n\n> **业务规则（重要）**：提交生成任务时，必须先查询并复用现有的 `conversationId`，**一律不创建新的 conversation（批次）**。这样能保证所有记录在同一个会话下，查询历史时不会断档。\n>\n> 查询方式：`POST /api/v1/Conversation/Search`（projectType: IMAGE/VIDEO，按 lastMessageAt 倒序取第一条）\n\n> **prompt 字段规则（重要）**：\n>\n> -   **Agent 模式 / 自由创作**：prompt 由用户自定义，是核心必填参数，描述想要什么图片\n> -   **其他 16 种模式**（如 AI 试衣、去水印等）：有**固定的默认 prompt**（详见 [references/image-modes.md](references/image-modes.md)），不可为空，否则任务发布会失败（code: 999）\n> -   部分模式（如换色、翻译、换表情）的 prompt 包含动态参数（颜色、语言、表情等），需要根据用户选择填充\n\n请求体示例（自由创作）：\n\n```json\n{\n    \"conversationId\": \"\",\n    \"projectType\": \"IMAGE\",\n    \"mode\": 1,\n    \"type\": 2,\n    \"payload\": {\n        \"aspectRatio\": \"auto\",\n        \"count\": 1,\n        \"prompt\": \"一件红色连衣裙，白色背景，电商商品图\",\n        \"sceneMode\": \"free_creation\",\n        \"referenceImages\": [{ \"key\": \"images\", \"index\": 0, \"url\": \"https://oss.fzputi.com/...\", \"description\": \"\" }]\n    }\n}\n```\n\n### 3. AI 详情图生成\n\n上传产品图，AI 自动分析并生成完整的电商商品详情页（含多张详情图）。\n\n**流程：**\n\n1. 创建批次 → AI 分析产品并生成详情页规划方案\n2. 用户确认/编辑规划方案（可选）\n3. 生成详情图 → 按模块逐张生成\n4. 查询结果和下载\n\n**核心 API：**\n\n-   `POST /api/v1/DetailImage/CreateBatch` — 创建详情图批次，AI 生成规划方案\n-   `POST /api/v1/DetailImage/GenerateBatchImages` — 确认规划后，生成详情图\n-   `POST /api/v1/DetailImage/GetBatchDetail` — 查询批次详情和规划方案\n-   `POST /api/v1/DetailImage/GetBatchTaskResults` — 查询生成结果\n-   `POST /api/v1/DetailImage/GetImageTasksProgress` — 查询任务进度\n-   `POST /api/v1/DetailImage/RemakeImage` — 重新生成单张图\n\n**CreateBatch 参数：**\n\n```json\n{\n    \"batchId\": \"\", // 首次创建为空，复刻时传入旧batchId\n    \"productInfo\": \"无线智能洗地机，集吸尘拖地自清洁于一体...\", // 产品信息描述\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"], // 产品图，1-6张\n    \"language\": \"简体中文\", // 语言：简体中文/繁体中文/英语/日语/韩语/德语/法语/阿拉伯语/俄语/泰语/印尼语/越南语/马来语/西班牙语/葡萄牙语/巴西葡萄牙语\n    \"aspectRatio\": \"3:4\", // 尺寸比例\n    \"moduleKeys\": [\"header\", \"product_showcase\", \"selling_points\"] // 选择的详情页模块\n}\n```\n\n**可用尺寸比例：** `1:1`, `2:3`, `3:2`, `3:4`（默认）, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9`\n\n**可用语言：** 简体中文、繁体中文、英语、日语、韩语、德语、法语、阿拉伯语、俄语、泰语、印尼语、越南语、马来语、西班牙语、葡萄牙语、巴西葡萄牙语\n\n**模块列表**（通过 `GET /api/v1/Template/GetDetailImageModules` 获取，各模块有名称、描述、示例图）：\n\n-   模块是详情页的标准组成部分（如首图、产品展示、卖点、参数、使用场景等）\n-   每个模块有 `key`、`displayName`、`description`、`sampleImageUrls`\n-   部分模块默认选中\n-   用户多选，至少保留 1 个模块\n\n**积分消耗：** 每张详情图 **15 积分**，总积分 = 选中模块数量 × 15\n\n**状态流转：**\n\n-   `plan_pending` → `planning`（AI 生成规划中） → `plan_completed`（规划完成，待生成） → `image_generating`（生成中） → `completed` / `failed` / `partial_completed`\n\n### 4. 风格复刻\n\n上传参考设计图和产品图，AI 学习参考图的风格并应用到产品上，生成风格一致的新图片。\n\n**核心 API：**\n\n-   `POST /api/v1/StyleReplication/CreateBatch` — 创建风格复刻批次\n-   `POST /api/v1/StyleReplication/RetryImage` — 重新生成单张图\n-   `POST /api/v1/DetailImage/GetBatchProgress` — 查询批次进度\n-   `POST /api/v1/DetailImage/GetBatchTaskResults` — 查询批次结果\n-   `POST /api/v1/DetailImage/GetImageTasksProgress` — 查询图片任务进度\n\n**CreateBatch 参数：**\n\n```json\n{\n    \"batchId\": \"\", // 首次创建为空\n    \"styleReferenceImageUrls\": [\"https://oss.fzputi.com/...\"], // 参考设计图（风格来源），最多16张\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"], // 产品素材图，最多6张\n    \"aspectRatio\": \"1:1\", // 尺寸比例\n    \"generateCount\": 1, // 生成组数：1-3\n    \"detailRequirements\": \"添加新品上市文字，使用金色渐变风格...\" // 补充要求（prompt，可为null）\n}\n```\n\n**可用尺寸比例：** `1:1`, `2:3`, `3:2`, `3:4`, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9`\n\n**积分消耗：** 每张图 **15 积分**，总积分 = 参考图数量 × 组数 × 15\n\n**状态流转：**\n\n-   `plan_pending` → `planning` → `plan_completed` → `image_generating` → `completed` / `failed` / `partial_completed`\n\n### 5. 视频生成\n\n支持商品讲解视频、带货视频、促销视频等多种类型。\n\nAPI 端点：`POST https://aicraft.51aic.com/api/v1/Task/Publish`\n\n配置参数详见 [references/video-config.md](references/video-config.md)。\n\n请求体示例（新手模式）：\n\n```json\n{\n    \"conversationId\": \"\",\n    \"projectType\": \"VIDEO\",\n    \"mode\": 1,\n    \"type\": 1,\n    \"payload\": {\n        \"prompt\": \"介绍这款红色连衣裙的优点\",\n        \"duration\": 10,\n        \"orientation\": \"9:16\",\n        \"size\": \"large\",\n        \"language\": \"0\",\n        \"videoType\": \"2\",\n        \"videoChannel\": \"stable\",\n        \"images\": [\"https://oss.fzputi.com/...\"]\n    }\n}\n```\n\n### 6. 资产管理\n\n查询和管理用户的历史生成作品（图片、视频、详情图、风格复刻）。\n\n**核心 API：**\n\n-   `POST /api/v1/Asset/Search` — 查询资产列表\n-   `POST /api/v1/Asset/BatchDelete` — 批量删除资产\n\n**资产类型 (assetType)：**\n| 类型值 | 说明 |\n|--------|------|\n| `IMAGE` | AI 作图（单图生成） |\n| `VIDEO` | AI 视频 |\n| `DETAILIMAGE` | AI 详情图 |\n| `StyleReplication` | 风格复刻 |\n\n**Search 参数：**\n\n```json\n{\n    \"pageIndex\": 1,\n    \"pageSize\": 40,\n    \"assetType\": \"IMAGE\",\n    \"sortField\": \"createTime\",\n    \"sortType\": \"desc\",\n    \"startTime\": \"2024-01-01\", // 可选\n    \"endTime\": \"2024-01-02\" // 可选\n}\n```\n\n**返回字段：**\n\n```json\n{\n  \"assetId\": \"xxx\",\n  \"fileUrl\": \"https://oss.fzputi.com/...\",\n  \"thumbnailUrl\": \"https://oss.fzputi.com/...?x-oss-process=image/resize,w_530\",\n  \"width\": 1024,\n  \"height\": 1024,\n  \"createdAt\": \"2024-01-01T12:00:00\",\n  \"extra\": {\n    \"referenceImages\": [...],\n    \"prompt\": \"...\",\n    \"sceneMode\": \"...\",\n    \"aspectRatio\": \"...\"\n  }\n}\n```\n\n### 7. 查询任务状态\n\n生成任务提交后，返回 `taskJobId` 和 `conversationId`。可通过以下接口查询任务进度：\n\n-   **任务进度**: `POST /api/v1/Task/GetProgress`（支持批量查询，见下方 API 调用参考）\n-   **详情图/风格复刻进度**: `POST /api/v1/DetailImage/GetImageTasksProgress`\n\n### 8. 查询积分\n\n积分查询需要**两步认证**：\n\n1. **获取支付认证 token**：用用户 token 调用 `/api/v1/PayPackage/GetToken`（body: `{\"appType\": 6}`），返回 `authorization`\n2. **查询积分**：用 `authorization` 作为 `Authorization` header，访问支付 API `https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType`\n\n返回用户的剩余积分（会员积分 + 套餐积分）。\n\n> **authorization 缓存**：有效期约 2 小时。在同一次对话中获取后**可复用**，不需要每次查积分都重新调用 GetToken。如后续调用返回 401，再重新获取。\n>\n> 注意：支付 API 与主 API 使用不同的认证机制。如果用户未主动要求查积分，可跳过此步骤，直接引用下方的积分消耗参考表告知用户大致消耗。\n\n## 使用流程\n\n### 图片生成流程\n\n1. 确认用户已提供 token（如未提供，引导获取）\n2. **默认推荐 Agent 模式**：询问用户想要生成什么图片，引导上传参考图并描述需求\n    - 如用户只是泛化描述（\"帮我做张商品图\"、\"生成海报\"），按 Agent 模式处理：收集参考图 + 需求描述\n    - 如用户明确指定了具体功能模式（如 AI 试衣、去水印、换色等），切换到对应模式并使用其默认 prompt\n3. **确认 prompt**：\n    - Agent/自由创作：由用户描述需求生成 prompt（核心必填参数）\n    - 其他 16 种模式：使用对应模式的**默认 prompt**（见 [references/image-modes.md](references/image-modes.md)），如用户有特殊需求可在此基础上调整\n    - 部分模式（换色/翻译/换表情等）需要额外确认动态参数（颜色/语言/表情等）\n4. 询问参考图片\n5. 如有本地图片，先调用上传接口\n6. 构建并发送 Publish 请求\n7. 返回任务提交结果，告知用户可在 https://www.51aic.com/image/history?source=agents 查看\n\n### 视频生成流程\n\n1. 确认用户已提供 token\n2. 询问视频类型（商品讲解/带货/促销等）\n3. 询问参考图片和提示词\n4. 确认视频配置（通道/比例/清晰度/时长/语言）\n5. 如有本地图片，先调用上传接口\n6. 构建并发送 Publish 请求\n7. 返回任务提交结果\n\n### AI 详情图生成流程\n\n1. 确认用户已提供 token\n2. 请用户上传产品图（1-6 张）\n3. 询问产品信息描述（可选，也可使用 AI 帮写自动生成）\n4. 确认语言和尺寸比例（默认：简体中文 + 3:4）\n5. 获取模块列表，让用户选择需要的详情页模块\n6. 告知积分消耗：模块数量 × 15 积分\n7. 调用 `DetailImage/CreateBatch` 创建批次\n8. AI 生成规划方案（约需几十秒），轮询 `GetBatchDetail` 等待 `plan_completed`\n9. 规划完成后，向用户展示方案（模块列表和整体设计规范）\n10. 用户确认后，调用 `DetailImage/GenerateBatchImages` 生成详情图\n11. 轮询 `GetImageTasksProgress` 查询进度，完成后展示结果\n\n### 风格复刻流程\n\n1. 确认用户已提供 token\n2. 请用户上传参考设计图（风格来源，最多 16 张）\n3. 请用户上传产品素材图（最多 6 张）\n4. 确认尺寸比例和生成组数（1-3 组，默认 1 组）\n5. 询问补充要求（prompt，可选）\n6. 告知积分消耗：参考图数量 × 组数 × 15 积分\n7. 调用 `StyleReplication/CreateBatch` 创建批次\n8. 轮询 `DetailImage/GetBatchProgress` 查询进度\n9. 完成后展示结果\n\n### 资产管理流程\n\n1. 确认用户已提供 token\n2. 询问要查询的资产类型（图片/视频/详情图/风格复刻）\n3. 可选：确认日期范围、排序方式\n4. 调用 `Asset/Search` 查询\n5. 展示资产列表，支持告知下载链接\n6. 如用户要求删除，调用 `Asset/BatchDelete`\n\n## 积分消耗参考\n\n| 功能                             | 积分消耗                        |\n| -------------------------------- | ------------------------------- |\n| 图片生成（自由创作等大多数模式） | 5 积分/张                       |\n| 主图套图                         | 25 积分/套（5 张）              |\n| AI 详情图                        | 15 积分/张（按模块数量计）      |\n| 风格复刻                         | 15 积分/张（参考图数量 × 组数） |\n| 视频生成（stable 5 秒）          | 150 积分                        |\n| 视频生成（stable 10 秒）         | 200 积分                        |\n| 视频生成（stable 15 秒）         | 260 积分                        |\n| 视频生成（fast 5 秒）            | 100 积分                        |\n| 视频生成（fast 10 秒）           | 150 积分                        |\n| 视频生成（fast 15 秒）           | 200 积分                        |\n| AI 优质帮写视频脚本              | 2 积分                          |\n| 产品分析（AI 帮写）              | 1 积分                          |\n\n在提交生成任务前，可引用上表告知用户所需积分。如用户明确要求查当前余额，再执行积分查询（需要两步认证，见\"查询积分\"部分）。如积分不足，告知用户需要充值。\n\n## 错误处理\n\n常见错误及处理方式：\n\n| 错误码   | 含义              | 处理方式                                                                                                                    |\n| -------- | ----------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| 401      | Token 无效或过期  | 引导用户重新获取 token                                                                                                      |\n| 999      | 任务发布失败      | 常见原因：① prompt 为空或不符合模式要求（非 Agent/自由创作模式必须使用默认 prompt）；② 参数格式错误。检查 prompt 和各字段值 |\n| 积分不足 | 积分不够生成      | 告知用户当前积分和所需积分                                                                                                  |\n| 上传失败 | 图片格式/大小不符 | 检查图片格式(jpg/png/webp)和大小(≤10MB)                                                                                     |\n\n## API 调用参考\n\n以下是用 exec 工具直接调用 API 的示例。**macOS/Linux 用 `curl`，Windows 用 PowerShell `Invoke-RestMethod`**。\n\n调用前需确保已在 Header 中携带 `Token: <用户token>`。\n\n### 查询积分（两步认证，authorization 可复用约 2 小时）\n\n**Step 1 — 获取支付认证 token：**\n\n**macOS/Linux：**\n\n```bash\nAUTH=$(curl -s -X POST \"https://aicraft.51aic.com/api/v1/PayPackage/GetToken\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"appType\": 6}' | grep -o '\"result\":\"[^\"]*\"' | sed 's/\"result\":\"//;s/\"$//')\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"appType\": 6}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\n$AuthRes = Invoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/PayPackage/GetToken\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n$AUTH = $AuthRes.result\n```\n\n**Step 2 — 查询积分余额：**\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Authorization: $AUTH\" \\\n  -d '{\"ValueAddedServicesType\": 4}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"ValueAddedServicesType\": 4}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Authorization\"=$AUTH} -Body $BodyBytes\n```\n\n### 查询会话 ID（复用现有批次）\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Conversation/Search\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"projectType\": \"IMAGE\", \"pageIndex\": 1, \"pageSize\": 1, \"sortField\": \"lastMessageAt\", \"sortType\": \"desc\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"projectType\": \"IMAGE\", \"pageIndex\": 1, \"pageSize\": 1, \"sortField\": \"lastMessageAt\", \"sortType\": \"desc\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Conversation/Search\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 发布图片生成任务\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/Publish\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"conversationId\": \"<会话ID>\",\n    \"projectType\": \"IMAGE\",\n    \"mode\": 1,\n    \"type\": 2,\n    \"payload\": {\n      \"aspectRatio\": \"auto\",\n      \"count\": 1,\n      \"prompt\": \"一件红色连衣裙，白色背景，电商商品图\",\n      \"sceneMode\": \"free_creation\",\n      \"referenceImages\": []\n    }\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    conversationId = \"<会话ID>\"\n    projectType = \"IMAGE\"\n    mode = 1\n    type = 2\n    payload = @{\n        aspectRatio = \"auto\"\n        count = 1\n        prompt = \"一件红色连衣裙，白色背景，电商商品图\"\n        sceneMode = \"free_creation\"\n        referenceImages = @()\n    }\n} | ConvertTo-Json -Depth 5\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/Publish\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 发布视频生成任务\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/Publish\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"conversationId\": \"<会话ID>\",\n    \"projectType\": \"VIDEO\",\n    \"mode\": 1,\n    \"type\": 1,\n    \"payload\": {\n      \"prompt\": \"介绍这款红色连衣裙的优点\",\n      \"duration\": 10,\n      \"orientation\": \"9:16\",\n      \"size\": \"large\",\n      \"language\": \"0\",\n      \"videoType\": \"2\",\n      \"videoChannel\": \"stable\",\n      \"images\": [\"https://oss.fzputi.com/...\"]\n    }\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    conversationId = \"<会话ID>\"\n    projectType = \"VIDEO\"\n    mode = 1\n    type = 1\n    payload = @{\n        prompt = \"介绍这款红色连衣裙的优点\"\n        duration = 10\n        orientation = \"9:16\"\n        size = \"large\"\n        language = \"0\"\n        videoType = \"2\"\n        videoChannel = \"stable\"\n        images = @(\"https://oss.fzputi.com/...\")\n    }\n} | ConvertTo-Json -Depth 5\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/Publish\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 查询任务进度\n\n提交任务后返回 `taskJobId`。可通过 `Task/GetProgress` 查询任务状态，支持一次查多个。\n\n-   图片任务 `taskType`: `2`\n-   视频任务 `taskType`: `1`\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/GetProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"conditions\":[{\"taskJobId\":\"<任务ID>\",\"taskType\":2}]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"conditions\":[{\"taskJobId\":\"<任务ID>\",\"taskType\":2}]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/GetProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 创建批次\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/CreateBatch\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"batchId\": \"\",\n    \"productInfo\": \"无线智能洗地机，集吸尘拖地自清洁于一体\",\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"],\n    \"language\": \"简体中文\",\n    \"aspectRatio\": \"3:4\",\n    \"moduleKeys\": [\"header\", \"product_showcase\", \"selling_points\"]\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    batchId = \"\"\n    productInfo = \"无线智能洗地机，集吸尘拖地自清洁于一体\"\n    productImageUrls = @(\"https://oss.fzputi.com/...\")\n    language = \"简体中文\"\n    aspectRatio = \"3:4\"\n    moduleKeys = @(\"header\", \"product_showcase\", \"selling_points\")\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/CreateBatch\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 生成图片\n\n规划方案确认后调用：\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GenerateBatchImages\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchid\": \"<batchId>\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchid\": \"<batchId>\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GenerateBatchImages\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 查询批次详情\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchDetail\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchId\": \"<batchId>\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchId\": \"<batchId>\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchDetail\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 查询任务进度\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetImageTasksProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"type\": 1, \"taskIds\": [\"<taskId1>\", \"<taskId2>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"type\": 1, \"taskIds\": [\"<taskId1>\", \"<taskId2>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetImageTasksProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 风格复刻 — 创建批次\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/StyleReplication/CreateBatch\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"batchId\": \"\",\n    \"styleReferenceImageUrls\": [\"https://oss.fzputi.com/ref1.jpg\"],\n    \"productImageUrls\": [\"https://oss.fzputi.com/prod1.jpg\"],\n    \"aspectRatio\": \"1:1\",\n    \"generateCount\": 1,\n    \"detailRequirements\": \"使用金色渐变风格，添加促销标签\"\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    batchId = \"\"\n    styleReferenceImageUrls = @(\"https://oss.fzputi.com/ref1.jpg\")\n    productImageUrls = @(\"https://oss.fzputi.com/prod1.jpg\")\n    aspectRatio = \"1:1\"\n    generateCount = 1\n    detailRequirements = \"使用金色渐变风格，添加促销标签\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/StyleReplication/CreateBatch\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 风格复刻 — 查询批次进度\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchIds\": [\"<batchId>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchIds\": [\"<batchId>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 资产管理 — 查询资产\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Asset/Search\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"pageIndex\": 1,\n    \"pageSize\": 40,\n    \"assetType\": \"IMAGE\",\n    \"sortField\": \"createTime\",\n    \"sortType\": \"desc\"\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    pageIndex = 1\n    pageSize = 40\n    assetType = \"IMAGE\"\n    sortField = \"createTime\"\n    sortType = \"desc\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Asset/Search\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 资产管理 — 批量删除\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Asset/BatchDelete\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"assetIds\": [\"<assetId1>\", \"<assetId2>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"assetIds\": [\"<assetId1>\", \"<assetId2>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Asset/BatchDelete\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn79mgfe1sbe8ts4669xy41nq9845fx2\",\n  \"slug\": \"aicraft-skill\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1781003712508\n}\n\nFile v1.0.6:references/image-modes.md\n\n# 图片生成模式详解\n\n爱创AI平台支持18种图片生成模式，每种模式对应不同的 `sceneMode` 值和参数要求。\n\n## 重要提示\n\n### prompt 字段规则\n\n大多数模式**必须有 prompt**，且不同模式有固定的默认 prompt。如果 prompt 为空或不符合模式要求，任务会发布失败（code: 999）。\n\n- **Agent模式 / 自由创作**: prompt 由用户自定义描述，是核心参数\n- **其他16种模式**: 有预设的默认 prompt（见各模式说明），通常不需要用户额外输入\n- 部分模式的 prompt 中包含动态参数（如颜色、语言、表情等），需要根据实际情况填充\n\n## 模式列表\n\n### 1. Agent模式 (agent) ⭐ 首选推荐\n- **sceneMode**: `agent_image`\n- **说明**: AI智能体辅助图片生成，上传参考图后由AI自主分析意图、制定方案并生成优化后的图片。支持流式进度反馈（思考中→分析意图→制定方案→生成中）。**平台默认首屏模式**，当用户没有明确指定具体功能模式时，优先推荐使用此模式。\n- **参考图**: 最多10张（建议至少上传1张让AI分析）\n- **参数**: `prompt`（用户自定义需求描述）\n- **积分**: 5积分/张\n- **API 说明**: 前端使用 SSE 流式接口 `Task/GenerateAgentImageStream`，参数：`conversationId`、`imageUrls`（参考图URL数组）、`des`（prompt）、`ratio`（比例）、`taskJobId`。流式返回 `status_change`（状态更新）→ `task_intention`（意图分析）→ `task_plan`（方案制定）→ `task_info`（生成结果）。如无需流式体验，也可用 `Task/Publish` + `sceneMode: free_creation` 获得类似的图片生成效果。\n\n### 2. 自由创作 (freestyle)\n- **sceneMode**: `free_creation`\n- **说明**: 最通用的图片生成模式，上传参考图并描述需求即可生成\n- **参考图**: 最多10张\n- **参数**: `prompt`, `referenceImages`\n- **默认 prompt**: 用户自定义（必填，描述想要什么图片）\n- **积分**: 5积分/张\n\n### 3. 商品图 (product-image)\n- **sceneMode**: `product_image`\n- **说明**: 专为电商商品展示设计，生成高质量商品图\n- **参考图**: 需要上传商品照片\n- **参数**: `prompt`, `referenceImages`\n- **默认 prompt**: `生成专业商品图。`\n\n### 4. 主图套图 (main-picture)\n- **sceneMode**: `main_image_set`\n- **说明**: 生成电商主图套图（通常包含5张不同角度/场景的图片）\n- **积分**: 25积分/套（5张）\n- **参考图**: 需要上传商品照片\n- **默认 prompt**: `基于上传参考图，生成一套5张的主图套图`\n\n### 5. AI试衣 (try-clothes)\n- **sceneMode**: `ai_try_on_clothes`\n- **说明**: 将衣服虚拟穿到模特身上\n- **默认 prompt**: `将上传的服饰自然穿在模特身上。`\n- **参考图**:\n  - 第一组 (`images`): **衣服照片（必填）**，最多2张\n  - 第二组 (`images2`): 模特照片（**可选**），最多1张。如不填，平台使用默认模特\n\n### 6. AI试鞋 (try-shoes)\n- **sceneMode**: `ai_try_on_shoes`\n- **说明**: 将鞋子虚拟穿到模特脚上\n- **默认 prompt**: `将鞋子自然穿在脚部姿势上。`\n- **参考图**:\n  - 第一组 (`images`): **鞋子照片（必填）**\n  - 第二组 (`images2`): 试鞋姿势图（**可选**），最多1张\n\n### 7. 商品换色 (product-recolor)\n- **sceneMode**: `product_recolor`\n- **说明**: 改变商品的颜色\n- **默认 prompt**: `将商品主体颜色更改为【{目标颜色}】`\n- **参考图**: 商品照片\n- **额外参数**: 需要在 prompt 中指定目标颜色，如 `将商品主体颜色更改为【红色】`\n\n### 8. 去除水印 (remove-watermark)\n- **sceneMode**: `remove_watermark`\n- **说明**: 去除图片中的水印\n- **默认 prompt**: `去除图片中的水印。`\n- **参考图**: 带水印的图片\n\n### 9. 手持商品 (handheld-product)\n- **sceneMode**: `handheld_product`\n- **说明**: 生成模特手持商品的图片\n- **默认 prompt**: `生成自然的手持商品图。`\n- **参考图**: 商品照片 + 可选的手部姿势参考\n\n### 10. AI试戴 (ai-try-on-accessories)\n- **sceneMode**: `ai_try_on_accessories`\n- **说明**: 虚拟试戴配饰（项链、耳环、眼镜等）\n- **默认 prompt**: `一键试戴。`\n- **参考图**: 模特照片 + 配饰照片\n\n### 11. 服装去皱 (clothes-dewrinkle)\n- **sceneMode**: `clothes_dewrinkle`\n- **说明**: 自动去除服装照片中的褶皱\n- **默认 prompt**: `抚平服装表面褶皱，去皱强度：【{强度}】`\n- **参考图**: 有褶皱的服装照片\n- **额外参数**: prompt 中需要指定去皱强度，如 `抚平服装表面褶皱，去皱强度：【强】`\n\n### 12. 去牛皮癣/去除杂物 (remove-noise)\n- **sceneMode**: `remove_psoriasis`\n- **说明**: 去除图片中的杂物、牛皮癣广告等\n- **默认 prompt**: `一键清除牛皮癣，还原干净画面。`\n- **参考图**: 需要清理的照片\n\n### 13. 图片翻译 (image-translate)\n- **sceneMode**: `image_translate`\n- **说明**: 翻译图片中的文字内容\n- **默认 prompt**: `识别图中文字并翻译成【{目标语言}】。`\n- **参考图**: 包含文字的图片\n- **额外参数**: prompt 中需要指定目标语言，如 `识别图中文字并翻译成【英语】。`\n\n### 14. 商品替换 (product-replace)\n- **sceneMode**: `product_replace`\n- **说明**: 将商品放入新的背景/场景中\n- **默认 prompt**: `用目标商品替换原图商品。`\n- **参考图**: 商品照片 + 可选的场景参考\n\n### 15. 商品平铺图 (product-flat-lay)\n- **sceneMode**: `product_flat_lay`\n- **说明**: 生成商品的平铺展示图\n- **默认 prompt**: `提取图中商品生成平铺图。`\n- **参考图**: 商品照片\n\n### 16. 换姿势 (pose-change)\n- **sceneMode**: `pose_change`\n- **说明**: 改变人物照片中的姿势\n- **默认 prompt**: `将人物从原姿势改为新姿势。`\n- **参考图**: 人物照片 + 目标姿势参考\n\n### 17. 换表情 (expression-change)\n- **sceneMode**: `expression_change`\n- **说明**: 改变人物照片中的表情\n- **默认 prompt**: `将人物表情自然替换为【{目标表情}】`\n- **参考图**: 人物照片\n- **额外参数**: prompt 中需要指定目标表情，如 `将人物表情自然替换为【微笑】`\n\n### 18. 商品精修 (product-retouch)\n- **sceneMode**: `product_retouch`\n- **说明**: 自动精修商品照片（调光、调色、锐化等）\n- **默认 prompt**: `精修图片。`\n- **参考图**: 商品照片\n- **⚠️ 注意**: 当前后端枚举值未完全对接，调用可能报错。建议优先使用其他模式。\n\n## 图片比例选项\n\n所有图片模式支持以下比例：\n\n| 比例 | 说明 |\n|------|------|\n| `auto` | 智能比例（默认） |\n| `1:1` | 正方形 |\n| `2:3` | 竖向 portrait |\n| `3:2` | 横向 landscape |\n| `3:4` | 竖向 portrait |\n| `9:16` | 竖向（短视频封面） |\n| `16:9` | 横向（横幅） |\n\n## 生成数量\n\n- Agent模式：不支持数量选择（固定1张）\n- 自由创作等大多数模式：1-4张\n- 主图套图：固定5张\n\n## 参考图数据结构\n\n```json\n{\n  \"referenceImages\": [\n    {\n      \"key\": \"images\",\n      \"index\": 0,\n      \"url\": \"https://oss.fzputi.com/...\",\n      \"description\": \"\"\n    }\n  ]\n}\n```\n\n对于需要两组图片的模式（如AI试衣），使用：\n```json\n{\n  \"referenceImages\": [\n    { \"key\": \"images\", \"index\": 0, \"url\": \"模特照片URL\", \"description\": \"\" },\n    { \"key\": \"images2\", \"index\": 0, \"url\": \"衣服照片URL\", \"description\": \"\" }\n  ]\n}\n```\n\nFile v1.0.6:references/video-config.md\n\n# 视频生成配置详解\n\n## 生成模式\n\n### 新手模式 (mode: 1)\n- 上传图片后，系统自动识别商品信息并生成脚本\n- 适合快速出视频\n- 额外消耗：脚本生成 2 积分\n\n### 专业模式 (mode: 2)\n- 上传图片后，系统生成多镜头分镜脚本（含镜头、台词、动作）\n- 适合精细控制视频内容\n- 额外消耗：脚本生成 2 积分\n\n## 视频通道 (videoChannel)\n\n**当前可用通道：**\n\n| 通道 | 值 | 时长选项 | 积分消耗 | 特点 |\n|------|-----|----------|----------|------|\n| 高稳通道 | `stable` | 10秒 / 15秒 | 150 / 200 | 稳定性极高，画面真实自然，适合电商爆款视频 |\n\n> 标准通道(`standard`)、增强通道(`enhanced`)、极速通道(`fast`) 当前已禁用。\n\n**新手模式总积分示例：**\n- stable 10秒 + 新手模式 = 150 + 2 = **152 积分**\n- stable 15秒 + 新手模式 = 200 + 2 = **202 积分**\n\n## 视频比例 (orientation)\n\n| 比例 | 值 | 适用平台 |\n|------|-----|----------|\n| 9:16 竖屏 | `9:16` | 抖音、快手等短视频平台（默认） |\n| 16:9 横屏 | `16:9` | B站、YouTube等横屏平台 |\n\n## 视频清晰度 (size)\n\n| 清晰度 | 值 | 说明 |\n|--------|-----|------|\n| 普清 | `small` | 标清画质，文件较小（默认） |\n| 高清 | `large` | 高清画质，推荐使用 |\n\n## 视频时长 (duration)\n\n- **stable 通道**: 10秒 或 15秒\n\n## 视频类型 (videoType)\n\n| 类型 | 值 | 说明 |\n|------|-----|------|\n| 商品推广 | `0` | 突出商品卖点和优势 |\n| 带货视频 | `1` | 直播带货风格 |\n| 商品讲解 | `2` | 详细介绍商品特点、功能和使用方法（默认） |\n| 商品促销 | `3` | 促销活动宣传 |\n| 商品测评 | `4` | 客观测评，优缺点分析 |\n| 商品口播 | `5` | 口播介绍类 |\n\n## 视频语言 (language)\n\n| 语言 | 值 |\n|------|-----|\n| 简体中文 | `0`（默认） |\n| 繁体中文 | `1` |\n| 英语 | `2` |\n| 泰语 | `3` |\n| 俄语 | `4` |\n| 越南语 | `5` |\n| 马来语 | `6` |\n| 葡萄牙语 | `7` |\n| 西班牙语 | `8` |\n\n## 默认配置推荐\n\n**电商商品讲解视频（新手模式）：**\n- mode: 1\n- videoChannel: `stable`\n- duration: 10\n- orientation: `9:16`\n- size: `large`\n- videoType: `2` (商品讲解)\n- language: `0` (简体中文)\n- 总积分：**152 积分**\n\n**电商商品讲解视频（专业模式）：**\n- mode: 2\n- videoChannel: `stable`\n- duration: 10\n- orientation: `9:16`\n- size: `large`\n- videoType: `2` (商品讲解)\n- language: `0` (简体中文)\n- 总积分：**150 积分**\n\n## API 请求示例\n\n```json\n{\n  \"conversationId\": \"\",\n  \"projectType\": \"VIDEO\",\n  \"mode\": 1,\n  \"type\": 1,\n  \"payload\": {\n    \"prompt\": \"介绍这款商品的优点和使用场景\",\n    \"duration\": 10,\n    \"orientation\": \"9:16\",\n    \"size\": \"large\",\n    \"language\": \"0\",\n    \"videoType\": \"2\",\n    \"videoChannel\": \"stable\",\n    \"images\": [\"https://oss.fzputi.com/...\"]\n  }\n}\n```\n\n## 响应示例\n\n```json\n{\n  \"code\": 200,\n  \"result\": {\n    \"conversationId\": \"xxx\",\n    \"taskJobId\": \"xxx\"\n  }\n}\n```\n\n任务提交后，用户可以在 https://www.51aic.com/video/history?source=agents 查看生成进度和结果。\n\nFile v1.0.6:skill-card.md\n\n## Description: <br>\nAICraft Skill helps ecommerce sellers use 51aic/AICraft services to generate and edit product images, videos, product-detail page assets, style replications, and manage generated assets. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[howerlin0329](https://clawhub.ai/user/howerlin0329) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal ecommerce operators and content creators use this skill to route product image, video, detail-page, virtual try-on, retouching, style replication, credit lookup, and asset-management requests through AICraft/51aic workflows. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill requires users to provide an AICraft/51aic login token. <br>\nMitigation: Use the token only for the current task, avoid shared or logged chats, and re-request the token if authorization fails instead of storing it long term. <br>\nRisk: Product images, prompts, and generated assets are uploaded to and processed by third-party AICraft/51aic and OSS services. <br>\nMitigation: Confirm each upload with the user and avoid sending confidential, regulated, or unauthorized media. <br>\nRisk: Image, video, detail-page, and style-replication generation can consume paid credits. <br>\nMitigation: Show the estimated credit cost and obtain user confirmation before submitting paid generation jobs. <br>\nRisk: Asset deletion can remove generated work from the user's account. <br>\nMitigation: List the exact asset IDs and obtain explicit confirmation before calling batch deletion. <br>\nRisk: Watermark removal may be misused on images the user does not control. <br>\nMitigation: Proceed only when the user confirms they own the image or have permission to edit it. <br>\n\n\n## Reference(s): <br>\n- [Image Modes Reference](references/image-modes.md) <br>\n- [Video Configuration Reference](references/video-config.md) <br>\n- [AICraft Platform](https://www.51aic.com?source=agents) <br>\n- [ClawHub Skill Page](https://clawhub.ai/howerlin0329/aicraft-skill) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Guidance, Shell commands, Configuration, JSON, API calls] <br>\n**Output Format:** [Markdown guidance with inline shell commands, PowerShell commands, and JSON request or response examples] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Outputs may include task IDs, conversation IDs, asset IDs, generated media URLs, progress summaries, and credit-cost estimates.] <br>\n\n## Skill Version(s): <br>\n1.0.6 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.6:evals/evals.json\n\n{\n  \"skill_name\": \"aicraft-skill\",\n  \"evals\": [\n    {\n      \"id\": 1,\n      \"prompt\": \"我是做电商的，想给我的连衣裙商品生成几张展示图，背景要白色，请问有什么推荐的工具？\",\n      \"expected_output\": \"应该识别出电商作图需求，推荐使用爱创AI平台，解释可用的图片生成功能（如商品图、自由创作等），并引导获取token\",\n      \"files\": []\n    },\n    {\n      \"id\": 2,\n      \"prompt\": \"我想给我的T恤商品做一个15秒的抖音带货视频，需要怎么操作？\",\n      \"expected_output\": \"应该识别出视频生成需求，推荐使用爱创AI的视频生成功能，解释视频配置选项（通道/比例/时长/类型等），并引导获取token\",\n      \"files\": []\n    },\n    {\n      \"id\": 3,\n      \"prompt\": \"我已经有爱创的token了，帮我查一下还剩多少积分\",\n      \"expected_output\": \"应该调用积分查询API，返回用户的剩余积分信息\",\n      \"files\": []\n    },\n    {\n      \"id\": 4,\n      \"prompt\": \"我有一张模特照片和一件新衣服的图片，想看一下模特穿这件衣服的效果\",\n      \"expected_output\": \"应该识别出AI试衣需求，推荐使用AI试衣功能，解释需要上传两张图片（模特+衣服），并引导获取token\",\n      \"files\": []\n    },\n    {\n      \"id\": 5,\n      \"prompt\": \"我想给我的无线洗地机产品生成一套电商详情页，需要什么流程？\",\n      \"expected_output\": \"应该识别出AI详情图生成需求，推荐使用爱创AI的详情图功能，解释流程：上传产品图→选择模块→AI生成规划→确认生成→下载详情图，并告知积分消耗（15积分/张）\",\n      \"files\": []\n    },\n    {\n      \"id\": 6,\n      \"prompt\": \"我有一批参考设计图，想让AI按照这些风格给我的新产品生成图片\",\n      \"expected_output\": \"应该识别出风格复刻需求，推荐使用爱创AI的风格复刻功能，解释需要上传参考设计图和产品图，选择比例和组数，并告知积分消耗（参考图数量×组数×15积分）\",\n      \"files\": []\n    },\n    {\n      \"id\": 7,\n      \"prompt\": \"我想查看我之前在爱创AI上生成的所有图片\",\n      \"expected_output\": \"应该识别出资产管理需求，推荐使用爱创AI的资产管理功能，调用Asset/Search查询assetType为IMAGE的资产列表\",\n      \"files\": []\n    },\n    {\n      \"id\": 8,\n      \"prompt\": \"帮我删除爱创AI上那些失败的风格复刻作品\",\n      \"expected_output\": \"应该识别出资产删除需求，先调用Asset/Search查询StyleReplication类型的资产，筛选状态为失败的，再调用Asset/BatchDelete批量删除\",\n      \"files\": []\n    }\n  ]\n}\n\nArchive v1.0.5: 6 files, 16135 bytes\n\nFiles: evals/evals.json (2711b), references/image-modes.md (7348b), references/video-config.md (3155b), skill-card.md (2773b), SKILL.md (30862b), _meta.json (132b)\n\nFile v1.0.5:SKILL.md\n\n---\nname: aicraft-skill\ndescription: >\n    爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能：\n\n    - 电商作图、商品图生成、主图套图、详情图制作\n    - AI生成图片、AI绘画、AI作图、Agent模式智能生成\n    - AI试衣、AI试鞋、AI试戴、虚拟试穿\n    - 商品精修、去水印、商品换色、服装去皱\n    - 图片翻译、商品替换背景、商品平铺图\n    - 换姿势、换表情、去牛皮癣/去除杂物\n    - AI视频生成、商品讲解视频、带货视频、短视频制作\n    - AI详情图生成、商品详情页、详情页规划\n    - 风格复刻、风格迁移、参考图风格生成\n    - 资产管理、素材管理、历史作品查看/下载/删除\n    - 提到\"爱创\"、\"51aic\"、\"aicraft\"、\"大泽AI\"\n    - 任何需要上传图片进行AI处理/编辑/生成的电商场景\n\n    此技能帮助用户通过爱创AI平台的API完成图片生成、视频生成、图片编辑、详情图生成、风格复刻、资产管理等任务。\n    支持18种图片生成模式、AI视频生成、AI详情图生成、风格复刻和资产管理。\n---\n\n# 爱创 AI 平台技能\n\n## 概述\n\n爱创 AI 平台（https://www.51aic.com?source=agents）是面向电商商家的AI内容创作平台，提供AI图片生成、AI视频生成、AI详情图生成、风格复刻、商品精修、虚拟试穿等全场景AI作图功能。\n\n本技能允许用户在 AI 对话中直接调用爱创 AI 平台的服务，无需手动访问网页。\n\n## 认证流程\n\n**所有 API 调用都需要用户的 token。**\n\n如果用户没有提供过 token，按以下步骤引导用户获取：\n\n1. 请用户打开浏览器访问 https://www.51aic.com/openclaw?source=agents\n2. 点击右上角登录（支持手机号验证码或微信扫码）\n3. 登录成功后，页面会自动显示当前 token\n4. 点击「复制 token」按钮，将 token 复制到剪贴板\n5. 将复制的 token 粘贴到对话中\n\n> **安全提示**：token 是用户的登录凭证，请勿在公共对话中分享。对话中的 token 仅在当前会话有效。\n\n获取到 token 后，保存到上下文中，后续所有 API 调用自动使用。\n\n## API 基础配置\n\n```\n主 API 地址:    https://aicraft.51aic.com\n文件上传地址:   https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\n图片 CDN:      https://oss.fzputi.com/\n```\n\n所有请求需要在 HTTP Header 中携带：`Token: <用户token>`\n\n## 核心能力\n\n### 1. 图片上传\n\n如果用户提供了本地图片文件，需要先上传到平台 OSS。\n\n**上传逻辑：**\n\n1. 读取图片文件，转为 base64 编码\n2. 拼接成 `data:image/jpeg;base64,...` 格式\n3. 生成 OSS 路径：`tools/aiCraft/1m/YYYYMMDD/<uuid>.<ext>`\n4. POST 到上传接口\n\n**macOS/Linux：**\n\n```bash\nFILE_PATH=\"<图片路径>\"\nB64=$(openssl base64 -in \"$FILE_PATH\" | tr -d '\\n')\nEXT=\"${FILE_PATH##*.}\"\n[ \"$EXT\" = \"jpeg\" ] && EXT=\"jpg\"\nUUID=$(uuidgen | tr '[:upper:]' '[:lower:]' | tr -d '-')\nDATE=$(date +%Y%m%d)\nMIME=\"image/$EXT\"\n[ \"$EXT\" = \"jpg\" ] && MIME=\"image/jpeg\"\n\ncurl -s -X POST \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d \"{\\\"ossFilePath\\\":\\\"tools/aiCraft/1m/$DATE/$UUID.$EXT\\\",\\\"fileBase64\\\":\\\"data:$MIME;base64,$B64\\\"}\"\n```\n\n**Windows：**\n\n```powershell\n$FilePath = \"<图片路径>\"\n$B64 = [Convert]::ToBase64String([IO.File]::ReadAllBytes($FilePath))\n$Ext = [System.IO.Path]::GetExtension($FilePath).TrimStart('.')\nif ($Ext -eq \"jpeg\") { $Ext = \"jpg\" }\n$UUID = [Guid]::NewGuid().ToString().Replace(\"-\", \"\").ToLower()\n$Date = Get-Date -Format \"yyyyMMdd\"\n$MIME = \"image/$Ext\"\nif ($Ext -eq \"jpg\") { $MIME = \"image/jpeg\" }\n\n$Body = @{\n    ossFilePath = \"tools/aiCraft/1m/$Date/$UUID.$Ext\"\n    fileBase64 = \"data:$MIME;base64,$B64\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n上传成功后会返回 `https://oss.fzputi.com/...` 的 URL，用于后续生成请求。\n\n### 2. 图片生成（18 种模式）\n\n支持 18 种图片生成模式，详见 [references/image-modes.md](references/image-modes.md)。\n\n**Agent 模式**（首选推荐）：AI 智能体辅助生成，上传参考图后 AI 自主分析意图、制定方案并生成优化图片。这是平台前端的默认首屏模式，交互最自然、智能程度最高。\n\n当用户没有明确指定具体功能模式时（如 AI 试衣、去水印等），**优先引导用户使用 Agent 模式**：上传参考图 → 描述需求 → AI 分析生成。\n\nAgent 模式与自由创作模式的 API 等价：两者都是通过上传参考图 + 自定义 prompt 生成图片。Agent 模式的前端使用 SSE 流式接口展示思考过程，通过 API 调用时等效于自由创作模式（`sceneMode: free_creation`）。\n\n其他常用模式：\n\n-   **自由创作**：通用图片生成，上传参考图并描述需求即可\n\nAPI 端点：`POST https://aicraft.51aic.com/api/v1/Task/Publish`\n\n> **业务规则（重要）**：提交生成任务时，必须先查询并复用现有的 `conversationId`，**一律不创建新的 conversation（批次）**。这样能保证所有记录在同一个会话下，查询历史时不会断档。\n>\n> 查询方式：`POST /api/v1/Conversation/Search`（projectType: IMAGE/VIDEO，按 lastMessageAt 倒序取第一条）\n\n> **prompt 字段规则（重要）**：\n>\n> -   **Agent 模式 / 自由创作**：prompt 由用户自定义，是核心必填参数，描述想要什么图片\n> -   **其他 16 种模式**（如 AI 试衣、去水印等）：有**固定的默认 prompt**（详见 [references/image-modes.md](references/image-modes.md)），不可为空，否则任务发布会失败（code: 999）\n> -   部分模式（如换色、翻译、换表情）的 prompt 包含动态参数（颜色、语言、表情等），需要根据用户选择填充\n\n请求体示例（自由创作）：\n\n```json\n{\n    \"conversationId\": \"\",\n    \"projectType\": \"IMAGE\",\n    \"mode\": 1,\n    \"type\": 2,\n    \"payload\": {\n        \"aspectRatio\": \"auto\",\n        \"count\": 1,\n        \"prompt\": \"一件红色连衣裙，白色背景，电商商品图\",\n        \"sceneMode\": \"free_creation\",\n        \"referenceImages\": [{ \"key\": \"images\", \"index\": 0, \"url\": \"https://oss.fzputi.com/...\", \"description\": \"\" }]\n    }\n}\n```\n\n### 3. AI 详情图生成\n\n上传产品图，AI 自动分析并生成完整的电商商品详情页（含多张详情图）。\n\n**流程：**\n\n1. 创建批次 → AI 分析产品并生成详情页规划方案\n2. 用户确认/编辑规划方案（可选）\n3. 生成详情图 → 按模块逐张生成\n4. 查询结果和下载\n\n**核心 API：**\n\n-   `POST /api/v1/DetailImage/CreateBatch` — 创建详情图批次，AI 生成规划方案\n-   `POST /api/v1/DetailImage/GenerateBatchImages` — 确认规划后，生成详情图\n-   `POST /api/v1/DetailImage/GetBatchDetail` — 查询批次详情和规划方案\n-   `POST /api/v1/DetailImage/GetBatchTaskResults` — 查询生成结果\n-   `POST /api/v1/DetailImage/GetImageTasksProgress` — 查询任务进度\n-   `POST /api/v1/DetailImage/RemakeImage` — 重新生成单张图\n\n**CreateBatch 参数：**\n\n```json\n{\n    \"batchId\": \"\", // 首次创建为空，复刻时传入旧batchId\n    \"productInfo\": \"无线智能洗地机，集吸尘拖地自清洁于一体...\", // 产品信息描述\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"], // 产品图，1-6张\n    \"language\": \"简体中文\", // 语言：简体中文/繁体中文/英语/日语/韩语/德语/法语/阿拉伯语/俄语/泰语/印尼语/越南语/马来语/西班牙语/葡萄牙语/巴西葡萄牙语\n    \"aspectRatio\": \"3:4\", // 尺寸比例\n    \"moduleKeys\": [\"header\", \"product_showcase\", \"selling_points\"] // 选择的详情页模块\n}\n```\n\n**可用尺寸比例：** `1:1`, `2:3`, `3:2`, `3:4`（默认）, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9`\n\n**可用语言：** 简体中文、繁体中文、英语、日语、韩语、德语、法语、阿拉伯语、俄语、泰语、印尼语、越南语、马来语、西班牙语、葡萄牙语、巴西葡萄牙语\n\n**模块列表**（通过 `GET /api/v1/Template/GetDetailImageModules` 获取，各模块有名称、描述、示例图）：\n\n-   模块是详情页的标准组成部分（如首图、产品展示、卖点、参数、使用场景等）\n-   每个模块有 `key`、`displayName`、`description`、`sampleImageUrls`\n-   部分模块默认选中\n-   用户多选，至少保留 1 个模块\n\n**积分消耗：** 每张详情图 **15 积分**，总积分 = 选中模块数量 × 15\n\n**状态流转：**\n\n-   `plan_pending` → `planning`（AI 生成规划中） → `plan_completed`（规划完成，待生成） → `image_generating`（生成中） → `completed` / `failed` / `partial_completed`\n\n### 4. 风格复刻\n\n上传参考设计图和产品图，AI 学习参考图的风格并应用到产品上，生成风格一致的新图片。\n\n**核心 API：**\n\n-   `POST /api/v1/StyleReplication/CreateBatch` — 创建风格复刻批次\n-   `POST /api/v1/StyleReplication/RetryImage` — 重新生成单张图\n-   `POST /api/v1/DetailImage/GetBatchProgress` — 查询批次进度\n-   `POST /api/v1/DetailImage/GetBatchTaskResults` — 查询批次结果\n-   `POST /api/v1/DetailImage/GetImageTasksProgress` — 查询图片任务进度\n\n**CreateBatch 参数：**\n\n```json\n{\n    \"batchId\": \"\", // 首次创建为空\n    \"styleReferenceImageUrls\": [\"https://oss.fzputi.com/...\"], // 参考设计图（风格来源），最多16张\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"], // 产品素材图，最多6张\n    \"aspectRatio\": \"1:1\", // 尺寸比例\n    \"generateCount\": 1, // 生成组数：1-3\n    \"detailRequirements\": \"添加新品上市文字，使用金色渐变风格...\" // 补充要求（prompt，可为null）\n}\n```\n\n**可用尺寸比例：** `1:1`, `2:3`, `3:2`, `3:4`, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9`\n\n**积分消耗：** 每张图 **15 积分**，总积分 = 参考图数量 × 组数 × 15\n\n**状态流转：**\n\n-   `plan_pending` → `planning` → `plan_completed` → `image_generating` → `completed` / `failed` / `partial_completed`\n\n### 5. 视频生成\n\n支持商品讲解视频、带货视频、促销视频等多种类型。\n\nAPI 端点：`POST https://aicraft.51aic.com/api/v1/Task/Publish`\n\n配置参数详见 [references/video-config.md](references/video-config.md)。\n\n请求体示例（新手模式）：\n\n```json\n{\n    \"conversationId\": \"\",\n    \"projectType\": \"VIDEO\",\n    \"mode\": 1,\n    \"type\": 1,\n    \"payload\": {\n        \"prompt\": \"介绍这款红色连衣裙的优点\",\n        \"duration\": 10,\n        \"orientation\": \"9:16\",\n        \"size\": \"large\",\n        \"language\": \"0\",\n        \"videoType\": \"2\",\n        \"videoChannel\": \"stable\",\n        \"images\": [\"https://oss.fzputi.com/...\"]\n    }\n}\n```\n\n### 6. 资产管理\n\n查询和管理用户的历史生成作品（图片、视频、详情图、风格复刻）。\n\n**核心 API：**\n\n-   `POST /api/v1/Asset/Search` — 查询资产列表\n-   `POST /api/v1/Asset/BatchDelete` — 批量删除资产\n\n**资产类型 (assetType)：**\n| 类型值 | 说明 |\n|--------|------|\n| `IMAGE` | AI 作图（单图生成） |\n| `VIDEO` | AI 视频 |\n| `DETAILIMAGE` | AI 详情图 |\n| `StyleReplication` | 风格复刻 |\n\n**Search 参数：**\n\n```json\n{\n    \"pageIndex\": 1,\n    \"pageSize\": 40,\n    \"assetType\": \"IMAGE\",\n    \"sortField\": \"createTime\",\n    \"sortType\": \"desc\",\n    \"startTime\": \"2024-01-01\", // 可选\n    \"endTime\": \"2024-01-02\" // 可选\n}\n```\n\n**返回字段：**\n\n```json\n{\n  \"assetId\": \"xxx\",\n  \"fileUrl\": \"https://oss.fzputi.com/...\",\n  \"thumbnailUrl\": \"https://oss.fzputi.com/...?x-oss-process=image/resize,w_530\",\n  \"width\": 1024,\n  \"height\": 1024,\n  \"createdAt\": \"2024-01-01T12:00:00\",\n  \"extra\": {\n    \"referenceImages\": [...],\n    \"prompt\": \"...\",\n    \"sceneMode\": \"...\",\n    \"aspectRatio\": \"...\"\n  }\n}\n```\n\n### 7. 查询任务状态\n\n生成任务提交后，返回 `taskJobId` 和 `conversationId`。可通过以下接口查询任务进度：\n\n-   **任务进度**: `POST /api/v1/Task/GetProgress`（支持批量查询，见下方 API 调用参考）\n-   **详情图/风格复刻进度**: `POST /api/v1/DetailImage/GetImageTasksProgress`\n\n### 8. 查询积分\n\n积分查询需要**两步认证**：\n\n1. **获取支付认证 token**：用用户 token 调用 `/api/v1/PayPackage/GetToken`（body: `{\"appType\": 6}`），返回 `authorization`\n2. **查询积分**：用 `authorization` 作为 `Authorization` header，访问支付 API `https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType`\n\n返回用户的剩余积分（会员积分 + 套餐积分）。\n\n> **authorization 缓存**：有效期约 2 小时。在同一次对话中获取后**可复用**，不需要每次查积分都重新调用 GetToken。如后续调用返回 401，再重新获取。\n>\n> 注意：支付 API 与主 API 使用不同的认证机制。如果用户未主动要求查积分，可跳过此步骤，直接引用下方的积分消耗参考表告知用户大致消耗。\n\n## 使用流程\n\n### 图片生成流程\n\n1. 确认用户已提供 token（如未提供，引导获取）\n2. **默认推荐 Agent 模式**：询问用户想要生成什么图片，引导上传参考图并描述需求\n    - 如用户只是泛化描述（\"帮我做张商品图\"、\"生成海报\"），按 Agent 模式处理：收集参考图 + 需求描述\n    - 如用户明确指定了具体功能模式（如 AI 试衣、去水印、换色等），切换到对应模式并使用其默认 prompt\n3. **确认 prompt**：\n    - Agent/自由创作：由用户描述需求生成 prompt（核心必填参数）\n    - 其他 16 种模式：使用对应模式的**默认 prompt**（见 [references/image-modes.md](references/image-modes.md)），如用户有特殊需求可在此基础上调整\n    - 部分模式（换色/翻译/换表情等）需要额外确认动态参数（颜色/语言/表情等）\n4. 询问参考图片\n5. 如有本地图片，先调用上传接口\n6. 构建并发送 Publish 请求\n7. 返回任务提交结果，告知用户可在 https://www.51aic.com/image/history?source=agents 查看\n\n### 视频生成流程\n\n1. 确认用户已提供 token\n2. 询问视频类型（商品讲解/带货/促销等）\n3. 询问参考图片和提示词\n4. 确认视频配置（通道/比例/清晰度/时长/语言）\n5. 如有本地图片，先调用上传接口\n6. 构建并发送 Publish 请求\n7. 返回任务提交结果\n\n### AI 详情图生成流程\n\n1. 确认用户已提供 token\n2. 请用户上传产品图（1-6 张）\n3. 询问产品信息描述（可选，也可使用 AI 帮写自动生成）\n4. 确认语言和尺寸比例（默认：简体中文 + 3:4）\n5. 获取模块列表，让用户选择需要的详情页模块\n6. 告知积分消耗：模块数量 × 15 积分\n7. 调用 `DetailImage/CreateBatch` 创建批次\n8. AI 生成规划方案（约需几十秒），轮询 `GetBatchDetail` 等待 `plan_completed`\n9. 规划完成后，向用户展示方案（模块列表和整体设计规范）\n10. 用户确认后，调用 `DetailImage/GenerateBatchImages` 生成详情图\n11. 轮询 `GetImageTasksProgress` 查询进度，完成后展示结果\n\n### 风格复刻流程\n\n1. 确认用户已提供 token\n2. 请用户上传参考设计图（风格来源，最多 16 张）\n3. 请用户上传产品素材图（最多 6 张）\n4. 确认尺寸比例和生成组数（1-3 组，默认 1 组）\n5. 询问补充要求（prompt，可选）\n6. 告知积分消耗：参考图数量 × 组数 × 15 积分\n7. 调用 `StyleReplication/CreateBatch` 创建批次\n8. 轮询 `DetailImage/GetBatchProgress` 查询进度\n9. 完成后展示结果\n\n### 资产管理流程\n\n1. 确认用户已提供 token\n2. 询问要查询的资产类型（图片/视频/详情图/风格复刻）\n3. 可选：确认日期范围、排序方式\n4. 调用 `Asset/Search` 查询\n5. 展示资产列表，支持告知下载链接\n6. 如用户要求删除，调用 `Asset/BatchDelete`\n\n## 积分消耗参考\n\n| 功能                             | 积分消耗                        |\n| -------------------------------- | ------------------------------- |\n| 图片生成（自由创作等大多数模式） | 5 积分/张                       |\n| 主图套图                         | 25 积分/套（5 张）              |\n| AI 详情图                        | 15 积分/张（按模块数量计）      |\n| 风格复刻                         | 15 积分/张（参考图数量 × 组数） |\n| 视频生成（stable 10 秒）         | 150 积分                        |\n| 视频生成（stable 15 秒）         | 200 积分                        |\n| 视频生成（新手模式额外）         | +2 积分                         |\n| 产品分析（AI 帮写）              | 1 积分                          |\n\n在提交生成任务前，可引用上表告知用户所需积分。如用户明确要求查当前余额，再执行积分查询（需要两步认证，见\"查询积分\"部分）。如积分不足，告知用户需要充值。\n\n## 错误处理\n\n常见错误及处理方式：\n\n| 错误码   | 含义              | 处理方式                                                                                                                    |\n| -------- | ----------------- | --------------------------------------------------------------------------------------------------------------------------- |\n| 401      | Token 无效或过期  | 引导用户重新获取 token                                                                                                      |\n| 999      | 任务发布失败      | 常见原因：① prompt 为空或不符合模式要求（非 Agent/自由创作模式必须使用默认 prompt）；② 参数格式错误。检查 prompt 和各字段值 |\n| 积分不足 | 积分不够生成      | 告知用户当前积分和所需积分                                                                                                  |\n| 上传失败 | 图片格式/大小不符 | 检查图片格式(jpg/png/webp)和大小(≤10MB)                                                                                     |\n\n## API 调用参考\n\n以下是用 exec 工具直接调用 API 的示例。**macOS/Linux 用 `curl`，Windows 用 PowerShell `Invoke-RestMethod`**。\n\n调用前需确保已在 Header 中携带 `Token: <用户token>`。\n\n### 查询积分（两步认证，authorization 可复用约 2 小时）\n\n**Step 1 — 获取支付认证 token：**\n\n**macOS/Linux：**\n\n```bash\nAUTH=$(curl -s -X POST \"https://aicraft.51aic.com/api/v1/PayPackage/GetToken\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"appType\": 6}' | grep -o '\"result\":\"[^\"]*\"' | sed 's/\"result\":\"//;s/\"$//')\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"appType\": 6}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\n$AuthRes = Invoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/PayPackage/GetToken\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n$AUTH = $AuthRes.result\n```\n\n**Step 2 — 查询积分余额：**\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Authorization: $AUTH\" \\\n  -d '{\"ValueAddedServicesType\": 4}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"ValueAddedServicesType\": 4}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://api.fzputi.com/payment/api/v1/Vas/GetQuantityByPackageType\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Authorization\"=$AUTH} -Body $BodyBytes\n```\n\n### 查询会话 ID（复用现有批次）\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Conversation/Search\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"projectType\": \"IMAGE\", \"pageIndex\": 1, \"pageSize\": 1, \"sortField\": \"lastMessageAt\", \"sortType\": \"desc\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"projectType\": \"IMAGE\", \"pageIndex\": 1, \"pageSize\": 1, \"sortField\": \"lastMessageAt\", \"sortType\": \"desc\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Conversation/Search\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 发布图片生成任务\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/Publish\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"conversationId\": \"<会话ID>\",\n    \"projectType\": \"IMAGE\",\n    \"mode\": 1,\n    \"type\": 2,\n    \"payload\": {\n      \"aspectRatio\": \"auto\",\n      \"count\": 1,\n      \"prompt\": \"一件红色连衣裙，白色背景，电商商品图\",\n      \"sceneMode\": \"free_creation\",\n      \"referenceImages\": []\n    }\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    conversationId = \"<会话ID>\"\n    projectType = \"IMAGE\"\n    mode = 1\n    type = 2\n    payload = @{\n        aspectRatio = \"auto\"\n        count = 1\n        prompt = \"一件红色连衣裙，白色背景，电商商品图\"\n        sceneMode = \"free_creation\"\n        referenceImages = @()\n    }\n} | ConvertTo-Json -Depth 5\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/Publish\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 发布视频生成任务\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/Publish\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"conversationId\": \"<会话ID>\",\n    \"projectType\": \"VIDEO\",\n    \"mode\": 1,\n    \"type\": 1,\n    \"payload\": {\n      \"prompt\": \"介绍这款红色连衣裙的优点\",\n      \"duration\": 10,\n      \"orientation\": \"9:16\",\n      \"size\": \"large\",\n      \"language\": \"0\",\n      \"videoType\": \"2\",\n      \"videoChannel\": \"stable\",\n      \"images\": [\"https://oss.fzputi.com/...\"]\n    }\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    conversationId = \"<会话ID>\"\n    projectType = \"VIDEO\"\n    mode = 1\n    type = 1\n    payload = @{\n        prompt = \"介绍这款红色连衣裙的优点\"\n        duration = 10\n        orientation = \"9:16\"\n        size = \"large\"\n        language = \"0\"\n        videoType = \"2\"\n        videoChannel = \"stable\"\n        images = @(\"https://oss.fzputi.com/...\")\n    }\n} | ConvertTo-Json -Depth 5\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/Publish\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 查询任务进度\n\n提交任务后返回 `taskJobId`。可通过 `Task/GetProgress` 查询任务状态，支持一次查多个。\n\n-   图片任务 `taskType`: `2`\n-   视频任务 `taskType`: `1`\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Task/GetProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"conditions\":[{\"taskJobId\":\"<任务ID>\",\"taskType\":2}]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"conditions\":[{\"taskJobId\":\"<任务ID>\",\"taskType\":2}]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Task/GetProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 创建批次\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/CreateBatch\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"batchId\": \"\",\n    \"productInfo\": \"无线智能洗地机，集吸尘拖地自清洁于一体\",\n    \"productImageUrls\": [\"https://oss.fzputi.com/...\"],\n    \"language\": \"简体中文\",\n    \"aspectRatio\": \"3:4\",\n    \"moduleKeys\": [\"header\", \"product_showcase\", \"selling_points\"]\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    batchId = \"\"\n    productInfo = \"无线智能洗地机，集吸尘拖地自清洁于一体\"\n    productImageUrls = @(\"https://oss.fzputi.com/...\")\n    language = \"简体中文\"\n    aspectRatio = \"3:4\"\n    moduleKeys = @(\"header\", \"product_showcase\", \"selling_points\")\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/CreateBatch\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 生成图片\n\n规划方案确认后调用：\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GenerateBatchImages\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchid\": \"<batchId>\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchid\": \"<batchId>\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GenerateBatchImages\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 查询批次详情\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchDetail\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchId\": \"<batchId>\"}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchId\": \"<batchId>\"}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchDetail\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### AI 详情图 — 查询任务进度\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetImageTasksProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"type\": 1, \"taskIds\": [\"<taskId1>\", \"<taskId2>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"type\": 1, \"taskIds\": [\"<taskId1>\", \"<taskId2>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetImageTasksProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 风格复刻 — 创建批次\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/StyleReplication/CreateBatch\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"batchId\": \"\",\n    \"styleReferenceImageUrls\": [\"https://oss.fzputi.com/ref1.jpg\"],\n    \"productImageUrls\": [\"https://oss.fzputi.com/prod1.jpg\"],\n    \"aspectRatio\": \"1:1\",\n    \"generateCount\": 1,\n    \"detailRequirements\": \"使用金色渐变风格，添加促销标签\"\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    batchId = \"\"\n    styleReferenceImageUrls = @(\"https://oss.fzputi.com/ref1.jpg\")\n    productImageUrls = @(\"https://oss.fzputi.com/prod1.jpg\")\n    aspectRatio = \"1:1\"\n    generateCount = 1\n    detailRequirements = \"使用金色渐变风格，添加促销标签\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/StyleReplication/CreateBatch\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 风格复刻 — 查询批次进度\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchProgress\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"batchIds\": [\"<batchId>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"batchIds\": [\"<batchId>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/DetailImage/GetBatchProgress\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 资产管理 — 查询资产\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Asset/Search\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\n    \"pageIndex\": 1,\n    \"pageSize\": 40,\n    \"assetType\": \"IMAGE\",\n    \"sortField\": \"createTime\",\n    \"sortType\": \"desc\"\n  }'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = @{\n    pageIndex = 1\n    pageSize = 40\n    assetType = \"IMAGE\"\n    sortField = \"createTime\"\n    sortType = \"desc\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Asset/Search\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\n### 资产管理 — 批量删除\n\n**macOS/Linux：**\n\n```bash\ncurl -s -X POST \"https://aicraft.51aic.com/api/v1/Asset/BatchDelete\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d '{\"assetIds\": [\"<assetId1>\", \"<assetId2>\"]}'\n```\n\n**Windows：**\n\n```powershell\n[Console]::OutputEncoding = [System.Text.Encoding]::UTF8\n$Body = '{\"assetIds\": [\"<assetId1>\", \"<assetId2>\"]}'\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://aicraft.51aic.com/api/v1/Asset/BatchDelete\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes\n```\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn79mgfe1sbe8ts4669xy41nq9845fx2\",\n  \"slug\": \"aicraft-skill\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1780994038715\n}\n\nFile v1.0.5:references/image-modes.md\n\n# 图片生成模式详解\n\n爱创AI平台支持18种图片生成模式，每种模式对应不同的 `sceneMode` 值和参数要求。\n\n## 重要提示\n\n### prompt 字段规则\n\n大多数模式**必须有 prompt**，且不同模式有固定的默认 prompt。如果 prompt 为空或不符合模式要求，任务会发布失败（code: 999）。\n\n- **Agent模式 / 自由创作**: prompt 由用户自定义描述，是核心参数\n- **其他16种模式**: 有预设的默认 prompt（见各模式说明），通常不需要用户额外输入\n- 部分模式的 prompt 中包含动态参数（如颜色、语言、表情等），需要根据实际情况填充\n\n## 模式列表\n\n### 1. Agent模式 (agent) ⭐ 首选推荐\n- **sceneMode**: `agent_image`\n- **说明**: AI智能体辅助图片生成，上传参考图后由AI自主分析意图、制定方案并生成优化后的图片。支持流式进度反馈（思考中→分析意图→制定方案→生成中）。**平台默认首屏模式**，当用户没有明确指定具体功能模式时，优先推荐使用此模式。\n- **参考图**: 最多10张（建议至少上传1张让AI分析）\n- **参数**: `prompt`（用户自定义需求描述）\n- **积分**: 5积分/张\n- **API 说明**: 前端使用 SSE 流式接口 `Task/GenerateAgentImageStream` 提供实时进度反馈。通过 API 调用时，使用**自由创作**模式（`sceneMode: free_creation`）可获得等效效果——两者都是上传参考图 + 自定义 prompt 生成。\n\n### 2. 自由创作 (freestyle)\n- **sceneMode**: `free_creation`\n- **说明**: 最通用的图片生成模式，上传参考图并描述需求即可生成\n- **参考图**: 最多10张\n- **参数**: `prompt`, `referenceImages`\n- **默认 prompt**: 用户自定义（必填，描述想要什么图片）\n- **积分**: 5积分/张\n\n### 3. 商品图 (product-image)\n- **sceneMode**: `product_image`\n- **说明**: 专为电商商品展示设计，生成高质量商品图\n- **参考图**: 需要上传商品照片\n- **参数**: `prompt`, `referenceImages`\n- **默认 prompt**: `生成专业商品图。`\n\n### 4. 主图套图 (main-picture)\n- **sceneMode**: `main_image_set`\n- **说明**: 生成电商主图套图（通常包含5张不同角度/场景的图片）\n- **积分**: 25积分/套（5张）\n- **参考图**: 需要上传商品照片\n- **默认 prompt**: `基于上传参考图，生成一套5张的主图套图`\n\n### 5. AI试衣 (try-clothes)\n- **sceneMode**: `ai_try_on_clothes`\n- **说明**: 将衣服虚拟穿到模特身上\n- **默认 prompt**: `将上传的服饰自然穿在模特身上。`\n- **参考图**:\n  - 第一组 (`images`): **衣服照片（必填）**，最多2张\n  - 第二组 (`images2`): 模特照片（**可选**），最多1张。如不填，平台使用默认模特\n\n### 6. AI试鞋 (try-shoes)\n- **sceneMode**: `ai_try_on_shoes`\n- **说明**: 将鞋子虚拟穿到模特脚上\n- **默认 prompt**: `将鞋子自然穿在脚部姿势上。`\n- **参考图**:\n  - 第一组 (`images`): **鞋子照片（必填）**\n  - 第二组 (`images2`): 试鞋姿势图（**可选**），最多1张\n\n### 7. 商品换色 (product-recolor)\n- **sceneMode**: `product_recolor`\n- **说明**: 改变商品的颜色\n- **默认 prompt**: `将商品主体颜色更改为【{目标颜色}】`\n- **参考图**: 商品照片\n- **额外参数**: 需要在 prompt 中指定目标颜色，如 `将商品主体颜色更改为【红色】`\n\n### 8. 去除水印 (remove-watermark)\n- **sceneMode**: `remove_watermark`\n- **说明**: 去除图片中的水印\n- **默认 prompt**: `去除图片中的水印。`\n- **参考图**: 带水印的图片\n\n### 9. 手持商品 (handheld-product)\n- **sceneMode**: `handheld_product`\n- **说明**: 生成模特手持商品的图片\n- **默认 prompt**: `生成自然的手持商品图。`\n- **参考图**: 商品照片 + 可选的手部姿势参考\n\n### 10. AI试戴 (ai-try-on-accessories)\n- **sceneMode**: `ai_try_on_accessories`\n- **说明**: 虚拟试戴配饰（项链、耳环、眼镜等）\n- **默认 prompt**: `一键试戴。`\n- **参考图**: 模特照片 + 配饰照片\n\n### 11. 服装去皱 (clothes-dewrinkle)\n- **sceneMode**: `clothes_dewrinkle`\n- **说明**: 自动去除服装照片中的褶皱\n- **默认 prompt**: `抚平服装表面褶皱，去皱强度：【{强度}】`\n- **参考图**: 有褶皱的服装照片\n- **额外参数**: prompt 中需要指定去皱强度，如 `抚平服装表面褶皱，去皱强度：【强】`\n\n### 12. 去牛皮癣/去除杂物 (remove-noise)\n- **sceneMode**: `remove_psoriasis`\n- **说明**: 去除图片中的杂物、牛皮癣广告等\n- **默认 prompt**: `一键清除牛皮癣，还原干净画面。`\n- **参考图**: 需要清理的照片\n\n### 13. 图片翻译 (image-translate)\n- **sceneMode**: `image_translate`\n- **说明**: 翻译图片中的文字内容\n- **默认 prompt**: `识别图中文字并翻译成【{目标语言}】。`\n- **参考图**: 包含文字的图片\n- **额外参数**: prompt 中需要指定目标语言，如 `识别图中文字并翻译成【英语】。`\n\n### 14. 商品替换 (product-replace)\n- **sceneMode**: `product_replace`\n- **说明**: 将商品放入新的背景/场景中\n- **默认 prompt**: `用目标商品替换原图商品。`\n- **参考图**: 商品照片 + 可选的场景参考\n\n### 15. 商品平铺图 (product-flat-lay)\n- **sceneMode**: `product_flat_lay`\n- **说明**: 生成商品的平铺展示图\n- **默认 prompt**: `提取图中商品生成平铺图。`\n- **参考图**: 商品照片\n\n### 16. 换姿势 (pose-change)\n- **sceneMode**: `pose_change`\n- **说明**: 改变人物照片中的姿势\n- **默认 prompt**: `将人物从原姿势改为新姿势。`\n- **参考图**: 人物照片 + 目标姿势参考\n\n### 17. 换表情 (expression-change)\n- **sceneMode**: `expression_change`\n- **说明**: 改变人物照片中的表情\n- **默认 prompt**: `将人物表情自然替换为【{目标表情}】`\n- **参考图**: 人物照片\n- **额外参数**: prompt 中需要指定目标表情，如 `将人物表情自然替换为【微笑】`\n\n### 18. 商品精修 (product-retouch)\n- **sceneMode**: `product_retouch`\n- **说明**: 自动精修商品照片（调光、调色、锐化等）\n- **默认 prompt**: `精修图片。`\n- **参考图**: 商品照片\n- **⚠️ 注意**: 当前后端枚举值未完全对接，调用可能报错。建议优先使用其他模式。\n\n## 图片比例选项\n\n所有图片模式支持以下比例：\n\n| 比例 | 说明 |\n|------|------|\n| `auto` | 智能比例（默认） |\n| `1:1` | 正方形 |\n| `2:3` | 竖向 portrait |\n| `3:2` | 横向 landscape |\n| `3:4` | 竖向 portrait |\n| `9:16` | 竖向（短视频封面） |\n| `16:9` | 横向（横幅） |\n\n## 生成数量\n\n- Agent模式：不支持数量选择（固定1张）\n- 自由创作等大多数模式：1-4张\n- 主图套图：固定5张\n\n## 参考图数据结构\n\n```json\n{\n  \"referenceImages\": [\n    {\n      \"key\": \"images\",\n      \"index\": 0,\n      \"url\": \"https://oss.fzputi.com/...\",\n      \"description\": \"\"\n    }\n  ]\n}\n```\n\n对于需要两组图片的模式（如AI试衣），使用：\n```json\n{\n  \"referenceImages\": [\n    { \"key\": \"images\", \"index\": 0, \"url\": \"模特照片URL\", \"description\": \"\" },\n    { \"key\": \"images2\", \"index\": 0, \"url\": \"衣服照片URL\", \"description\": \"\" }\n  ]\n}\n```\n\nFile v1.0.5:references/video-config.md\n\n# 视频生成配置详解\n\n## 生成模式\n\n### 新手模式 (mode: 1)\n- 上传图片后，系统自动识别商品信息并生成脚本\n- 适合快速出视频\n- 额外消耗：脚本生成 2 积分\n\n### 专业模式 (mode: 2)\n- 上传图片后，系统生成多镜头分镜脚本（含镜头、台词、动作）\n- 适合精细控制视频内容\n- 额外消耗：脚本生成 2 积分\n\n## 视频通道 (videoChannel)\n\n**当前可用通道：**\n\n| 通道 | 值 | 时长选项 | 积分消耗 | 特点 |\n|------|-----|----------|----------|------|\n| 高稳通道 | `stable` | 10秒 / 15秒 | 150 / 200 | 稳定性极高，画面真实自然，适合电商爆款视频 |\n\n> 标准通道(`standard`)、增强通道(`enhanced`)、极速通道(`fast`) 当前已禁用。\n\n**新手模式总积分示例：**\n- stable 10秒 + 新手模式 = 150 + 2 = **152 积分**\n- stable 15秒 + 新手模式 = 200 + 2 = **202 积分**\n\n## 视频比例 (orientation)\n\n| 比例 | 值 | 适用平台 |\n|------|-----|----------|\n| 9:16 竖屏 | `9:16` | 抖音、快手等短视频平台（默认） |\n| 16:9 横屏 | `16:9` | B站、YouTube等横屏平台 |\n\n## 视频清晰度 (size)\n\n| 清晰度 | 值 | 说明 |\n|--------|-----|------|\n| 普清 | `small` | 标清画质，文件较小（默认） |\n| 高清 | `large` | 高清画质，推荐使用 |\n\n## 视频时长 (duration)\n\n- **stable 通道**: 10秒 或 15秒\n\n## 视频类型 (videoType)\n\n| 类型 | 值 | 说明 |\n|------|-----|------|\n| 商品推广 | `0` | 突出商品卖点和优势 |\n| 带货视频 | `1` | 直播带货风格 |\n| 商品讲解 | `2` | 详细介绍商品特点、功能和使用方法（默认） |\n| 商品促销 | `3` | 促销活动宣传 |\n| 商品测评 | `4` | 客观测评，优缺点分析 |\n| 商品口播 | `5` | 口播介绍类 |\n\n## 视频语言 (language)\n\n| 语言 | 值 |\n|------|-----|\n| 简体中文 | `0`（默认） |\n| 繁体中文 | `1` |\n| 英语 | `2` |\n| 泰语 | `3` |\n| 俄语 | `4` |\n| 越南语 | `5` |\n| 马来语 | `6` |\n| 葡萄牙语 | `7` |\n| 西班牙语 | `8` |\n\n## 默认配置推荐\n\n**电商商品讲解视频（新手模式）：**\n- mode: 1\n- videoChannel: `stable`\n- duration: 10\n- orientation: `9:16`\n- size: `large`\n- videoType: `2` (商品讲解)\n- language: `0` (简体中文)\n- 总积分：**152 积分**\n\n**电商商品讲解视频（专业模式）：**\n- mode: 2\n- videoChannel: `stable`\n- duration: 10\n- orientation: `9:16`\n- size: `large`\n- videoType: `2` (商品讲解)\n- language: `0` (简体中文\n\nArchive v1.0.4: 6 files, 16155 bytes\n\nFiles: evals/evals.json (2711b), references/image-modes.md (7348b), references/video-config.md (3155b), skill-card.md (2941b), SKILL.md (29770b), _meta.json (132b)\n\nArchive v1.0.3: 6 files, 16248 bytes\n\nFiles: evals/evals.json (2711b), references/image-modes.md (7348b), references/video-config.md (3155b), skill-card.md (2881b), SKILL.md (29963b), _meta.json (132b)\n\nArchive v1.0.2: 5 files, 14479 bytes\n\nFiles: evals/evals.json (2711b), references/image-modes.md (7121b), references/video-config.md (3155b), SKILL.md (29310b), _meta.json (132b)\n\nArchive v1.0.1: 5 files, 11219 bytes\n\nFiles: evals/evals.json (1317b), references/image-modes.md (6450b), references/video-config.md (3659b), SKILL.md (15722b), _meta.json (132b)\n\nArchive v1.0.0: 5 files, 11209 bytes\n\nFiles: evals/evals.json (1317b), references/image-modes.md (6450b), references/video-config.md (3645b), SKILL.md (15602b), _meta.json (132b)","readmeExcerpt":"Skill: 爱创AI-电商专用AI创作智能体工具_AI图片生成_AI视频生成_AI电商详情图生成 Owner: howerlin0329 Summary: 爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能： - 电商作图、商品图生成、主图套图、详情图制作 - AI生成图片、AI绘画、AI作图、Agent模式智能生成 - AI试衣、AI试鞋、AI试戴、虚拟试穿 - 商品精修、去水印、商品换色、服装去皱 -... Tags: latest:1.0.8 Version history: v1.0.8 | 2026-06-09T12:59:33.888Z | user aicraft-skill 1.0.8 更新日志 - 新增图片展示规范，所有生成图片默认使用缩略图展示，附带原图下载链接 - 详细说明缩略图的URL获取方法和展示方式，强调不要直接展示原图 - 补充上传图片返","codeSnippets":[],"executableExamples":[{"language":"text","snippet":"主 API 地址:    https://aicraft.51aic.com\n文件上传地址:   https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\n图片 CDN:      https://oss.fzputi.com/"},{"language":"bash","snippet":"curl -s -X POST \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d \"{\\\"ossFilePath\\\":\\\"tools/aiCraft/1m/$DATE/$UUID.$EXT\\\",\\\"fileBase64\\\":\\\"data:$MIME;base64,$B64\\\"}\""},{"language":"bash","snippet":"FILE_PATH=\"<图片路径>\"\nB64=$(openssl base64 -in \"$FILE_PATH\" | tr -d '\\n')\nEXT=\"${FILE_PATH##*.}\"\n[ \"$EXT\" = \"jpeg\" ] && EXT=\"jpg\"\nUUID=$(uuidgen | tr '[:upper:]' '[:lower:]' | tr -d '-')\nDATE=$(date +%Y%m%d)\nMIME=\"image/$EXT\"\n[ \"$EXT\" = \"jpg\" ] && MIME=\"image/jpeg\"\n\ncurl -s -X POST \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d \"{\\\"ossFilePath\\\":\\\"tools/aiCraft/1m/$DATE/$UUID.$EXT\\\",\\\"fileBase64\\\":\\\"data:$MIME;base64,$B64\\\"}\""},{"language":"powershell","snippet":"$FilePath = \"<图片路径>\"\n$B64 = [Convert]::ToBase64String([IO.File]::ReadAllBytes($FilePath))\n$Ext = [System.IO.Path]::GetExtension($FilePath).TrimStart('.')\nif ($Ext -eq \"jpeg\") { $Ext = \"jpg\" }\n$UUID = [Guid]::NewGuid().ToString().Replace(\"-\", \"\").ToLower()\n$Date = Get-Date -Format \"yyyyMMdd\"\n$MIME = \"image/$Ext\"\nif ($Ext -eq \"jpg\") { $MIME = \"image/jpeg\" }\n\n$Body = @{\n    ossFilePath = \"tools/aiCraft/1m/$Date/$UUID.$Ext\"\n    fileBase64 = \"data:$MIME;base64,$B64\"\n} | ConvertTo-Json\n$BodyBytes = [System.Text.Encoding]::UTF8.GetBytes($Body)\nInvoke-RestMethod -Uri \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" -Method POST -Headers @{\"Content-Type\"=\"application/json; charset=utf-8\"; \"Token\"=\"<token>\"} -Body $BodyBytes"},{"language":"json","snippet":"{\n       \"conversationId\": \"<会话ID>\",\n       \"imageUrls\": [\"https://oss.fzputi.com/...\"],\n       \"des\": \"用户需求描述\",\n       \"ratio\": \"16:9\",\n       \"taskJobId\": \"<uuid>\"\n   }"},{"language":"text","snippet":"data:{\"code\":200,\"result\":{\"reasoningContent\":null,\"content\":\"{\\\"msg_type\\\":\\\"...\\\",\\\"data\\\":...}\"},\"msg\":\"success\"}"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: aicraft-skill\ndescription: >\n    爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能：\n\n    - 电商作图、商品图生成、主图套图、详情图制作\n    - AI生成图片、AI绘画、AI作图、Agent模式智能生成\n    - AI试衣、AI试鞋、AI试戴、虚拟试穿\n    - 商品精修、去水印、商品换色、服装去皱\n    - 图片翻译、商品替换背景、商品平铺图\n    - 换姿势、换表情、去牛皮癣/去除杂物\n    - AI视频生成、商品讲解视频、带货视频、短视频制作\n    - AI详情图生成、商品详情页、详情页规划\n    - 风格复刻、风格迁移、参考图风格生成\n    - 资产管理、素材管理、历史作品查看/下载/删除\n    - 提到\"爱创\"、\"51aic\"、\"aicraft\"、\"大泽AI\"\n    - 任何需要上传图片进行AI处理/编辑/生成的电商场景\n\n    此技能帮助用户通过爱创AI平台的API完成图片生成、视频生成、图片编辑、详情图生成、风格复刻、资产管理等任务。\n    支持18种图片生成模式、AI视频生成、AI详情图生成、风格复刻和资产管理。\n---\n\n# 爱创 AI 平台技能\n\n## 概述\n\n爱创 AI 平台（https://www.51aic.com?source=agents）是面向电商商家的AI内容创作平台，提供AI图片生成、AI视频生成、AI详情图生成、风格复刻、商品精修、虚拟试穿等全场景AI作图功能。\n\n本技能允许用户在 AI 对话中直接调用爱创 AI 平台的服务，无需手动访问网页。\n\n## 图片展示规则（重要）\n\n**所有生成出来的图片，必须使用缩略图方式展示，不要直接展示原图。**\n\n展示方式：\n1. **缩略图 URL**：使用 API 返回的 `thumbnailUrl` 字段（自带 `?x-oss-process=image/resize,w_530` 缩放参数），或在原图 URL 后拼接 `?x-oss-process=image/resize,w_530`\n2. **自定义缩略尺寸**：如需更小的缩略图，可调整 resize 宽度参数（如 `w_200`、`w_300`）\n3. **多图展示**：生成多张图片时，用缩略图网格排列展示，每张图附带原图下载链接\n4. **单图展示**：先展示缩略图，再提供原图 URL 供用户查看大图\n\n示例：\n- 原图：`https://oss.fzputi.com/xxx/result.png`\n- 缩略图（530px）：`https://oss.fzputi.com/xxx/result.png?x-oss-process=image/resize,w_530`\n\n## 认证流程\n\n**所有 API 调用都需要用户的 token。**\n\n如果用户没有提供过 token，按以下步骤引导用户获取：\n\n1. 请用户打开浏览器访问 https://www.51aic.com/openclaw?source=agents\n2. 点击右上角登录（支持手机号验证码或微信扫码）\n3. 登录成功后，页面会自动显示当前 token\n4. 点击「复制 token」按钮，将 token 复制到剪贴板\n5. 将复制的 token 粘贴到对话中\n\n> **安全提示**：token 是用户的登录凭证，请勿在公共对话中分享。对话中的 token 仅在当前会话有效。\n\n获取到 token 后，保存到上下文中，后续所有 API 调用自动使用。\n\n## API 基础配置\n\n```\n主 API 地址:    https://aicraft.51aic.com\n文件上传地址:   https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\n图片 CDN:      https://oss.fzputi.com/\n```\n\n所有请求需要在 HTTP Header 中携带：`Token: <用户token>`\n\n## 核心能力\n\n### 1. 图片上传\n\n如果用户提供了本地图片文件，需要先上传到平台 OSS。\n\n**上传逻辑：**\n\n1. 读取图片文件，转为 base64 编码\n2. 拼接成 `data:image/jpeg;base64,...` 格式\n3. 生成 OSS 路径：`tools/aiCraft/1m/YYYYMMDD/<uuid>.<ext>`\n4. POST 到上传接口\n\n**macOS/Linux：**\n\n```bash\nFILE_PATH=\"<图片路径>\"\nB64=$(openssl base64 -in \"$FILE_PATH\" | tr -d '\\n')\nEXT=\"${FILE_PATH##*.}\"\n[ \"$EXT\" = \"jpeg\" ] && EXT=\"jpg\"\nUUID=$(uuidgen | tr '[:upper:]' '[:lower:]' | tr -d '-')\nDATE=$(date +%Y%m%d)\nMIME=\"image/$EXT\"\n[ \"$EXT\" = \"jpg\" ] && MIME=\"image/jpeg\"\n\ncurl -s -X POST \"https://api.fzputi.com/ossmanager/api/Oss/UploadFileV2\" \\\n  -H \"Content-Type: application/json; charset=utf-8\" \\\n  -H \"Token: <token>\" \\\n  -d \"{\\\"ossFilePath\\\":\\\"tools/aiCraft/1m/$DATE/$UUID.$EXT\\\",\\\"fileBase64\\\":\\\"data:$MIME;base64,$B64\\\"}\"\n```\n\n**Windows：**\n\n```powershell\n$FilePath = \"<图片路径>\"\n$B64 = [Convert]::ToBase64String([IO.File]::ReadAllBytes($FilePath))\n$Ext = [System.IO.Path]::GetExtension($FilePath).TrimStart('.')\nif ($Ext -eq \"jpeg\") { $Ext = \"jpg\" }\n$UUID = [Guid]::NewGuid().ToString().Replace(\"-\", \"\").ToLower()\n$Date = Get-Date -Format \"yyyyMMdd\"\n$MIME = \"image/$Ext\"\nif ($Ext -eq \"jpg\") { $MIME = \"image/jpeg\" }\n\n$Body = @{\n    ossFilePath = \"tools/aiCraft/1m/$Date/$UUID.$Ext\"\n    fileBase64 = \"data:$MIME;base64,$B64\"\n} | ConvertTo-Json\n$Body"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn79mgfe1sbe8ts4669xy41nq9845fx2\",\n  \"slug\": \"aicraft-skill\",\n  \"version\": \"1.0.8\",\n  \"publishedAt\": 1781009973888\n}"},{"path":"references/image-modes.md","content":"# 图片生成模式详解\n\n爱创AI平台支持18种图片生成模式，每种模式对应不同的 `sceneMode` 值和参数要求。\n\n## 重要提示\n\n### prompt 字段规则\n\n大多数模式**必须有 prompt**，且不同模式有固定的默认 prompt。如果 prompt 为空或不符合模式要求，任务会发布失败（code: 999）。\n\n- **Agent模式 / 自由创作**: prompt 由用户自定义描述，是核心参数\n- **其他16种模式**: 有预设的默认 prompt（见各模式说明），通常不需要用户额外输入\n- 部分模式的 prompt 中包含动态参数（如颜色、语言、表情等），需要根据实际情况填充\n\n## 模式列表\n\n### 1. Agent模式 (agent) ⭐ 首选推荐\n- **sceneMode**: `agent_image`\n- **说明**: AI智能体辅助图片生成，上传参考图后由AI自主分析意图、制定方案并生成优化后的图片。支持流式进度反馈（思考中→分析意图→制定方案→生成中）。**平台默认首屏模式**，当用户没有明确指定具体功能模式时，优先推荐使用此模式。\n- **参考图**: 最多10张（建议至少上传1张让AI分析）\n- **参数**: `prompt`（用户自定义需求描述）\n- **积分**: 5积分/张\n- **API 说明**: 前端使用 SSE 流式接口 `Task/GenerateAgentImageStream`，参数：`conversationId`、`imageUrls`（参考图URL数组）、`des`（prompt）、`ratio`（比例）、`taskJobId`。流式返回 `status_change`（状态更新）→ `task_intention`（意图分析）→ `task_plan`（方案制定）→ `task_info`（生成结果，含 `image_length`）→ `workflow_finish`（工作流完成）。出错时返回 `task_error`。如无需流式体验，也可用 `Task/Publish` + `sceneMode: free_creation` 获得类似的图片生成效果。\n\n### 2. 自由创作 (freestyle)\n- **sceneMode**: `free_creation`\n- **说明**: 最通用的图片生成模式，上传参考图并描述需求即可生成\n- **参考图**: 最多10张\n- **参数**: `prompt`, `referenceImages`\n- **默认 prompt**: 用户自定义（必填，描述想要什么图片）\n- **积分**: 5积分/张\n\n### 3. 商品图 (product-image)\n- **sceneMode**: `product_image`\n- **说明**: 专为电商商品展示设计，生成高质量商品图\n- **参考图**: 需要上传商品照片\n- **参数**: `prompt`, `referenceImages`\n- **默认 prompt**: `生成专业商品图。`\n\n### 4. 主图套图 (main-picture)\n- **sceneMode**: `main_image_set`\n- **说明**: 生成电商主图套图（通常包含5张不同角度/场景的图片）\n- **积分**: 25积分/套（5张）\n- **参考图**: 需要上传商品照片\n- **默认 prompt**: `基于上传参考图，生成一套5张的主图套图`\n\n### 5. AI试衣 (try-clothes)\n- **sceneMode**: `ai_try_on_clothes`\n- **说明**: 将衣服虚拟穿到模特身上\n- **默认 prompt**: `将上传的服饰自然穿在模特身上。`\n- **参考图**:\n  - 第一组 (`images`): **衣服照片（必填）**，最多2张\n  - 第二组 (`images2`): 模特照片（**可选**），最多1张。如不填，平台使用默认模特\n\n### 6. AI试鞋 (try-shoes)\n- **sceneMode**: `ai_try_on_shoes`\n- **说明**: 将鞋子虚拟穿到模特脚上\n- **默认 prompt**: `将鞋子自然穿在脚部姿势上。`\n- **参考图**:\n  - 第一组 (`images`): **鞋子照片（必填）**\n  - 第二组 (`images2`): 试鞋姿势图（**可选**），最多1张\n\n### 7. 商品换色 (product-recolor)\n- **sceneMode**: `product_recolor`\n- **说明**: 改变商品的颜色\n- **默认 prompt**: `将商品主体颜色更改为【{目标颜色}】`\n- **参考图**: 商品照片\n- **额外参数**: 需要在 prompt 中指定目标颜色，如 `将商品主体颜色更改为【红色】`\n\n### 8. 去除水印 (remove-watermark)\n- **sceneMode**: `remove_watermark`\n- **说明**: 去除图片中的水印\n- **默认 prompt**: `去除图片中的水印。`\n- **参考图**: 带水印的图片\n\n### 9. 手持商品 (handheld-product)\n- **sceneMode**: `handheld_product`\n- **说明**: 生成模特手持商品的图片\n- **默认 prompt**: `生成自然的手持商品图。`\n- **参考图**: 商品照片 + 可选的手部姿势参考\n\n### 10. AI试戴 (ai-try-on-accessories)\n- **sceneMode**: `ai_try_on_accessories`\n- **说明**: 虚拟试戴配饰（项链、耳环、眼镜等）\n- **默认 prompt**: `一键试戴。`\n- **参考图**: 模特照片 + 配饰照片\n\n### 11. 服装去皱 (clothes-dewrinkle)\n- **sceneMode**: `clothes_dewrinkle`\n- **说明**: 自动去除服装照片中的褶皱\n- **默认 prompt**: `抚平服装表面褶皱，去皱强度：【{强度}】`\n- **参考图**: 有褶皱的服装照片\n- **额外参数**: prompt 中需要指定去皱强度，如 `抚平服装表面褶皱，去皱强度：【强】`\n\n### 12. 去牛皮癣/去除杂物 (remove-noise)\n- **sceneMode**: `remove_psoriasis`\n- **说明**: 去除图片中的杂物、牛皮癣广告等\n- **默认 prompt**: `一键清除牛皮癣，还原干净画面。`\n- **参考图**: 需要清理的照片\n\n### 13. 图片翻译 (image-translate)\n- **sceneMode**: `image_translate`\n- **说明**: 翻译图片中的文字内容\n- **默认 prompt**:"},{"path":"references/video-config.md","content":"# 视频生成配置详解\n\n## 生成模式\n\n### 新手模式 (mode: 1)\n- 上传图片后，系统自动识别商品信息并生成脚本\n- 适合快速出视频\n- 额外消耗：脚本生成 2 积分\n\n### 专业模式 (mode: 2)\n- 上传图片后，系统生成多镜头分镜脚本（含镜头、台词、动作）\n- 适合精细控制视频内容\n- 额外消耗：脚本生成 2 积分\n\n## 视频通道 (videoChannel)\n\n**当前可用通道：**\n\n| 通道 | 值 | 时长选项 | 积分消耗 | 特点 |\n|------|-----|----------|----------|------|\n| 高稳通道 | `stable` | 10秒 / 15秒 | 150 / 200 | 稳定性极高，画面真实自然，适合电商爆款视频 |\n\n> 标准通道(`standard`)、增强通道(`enhanced`)、极速通道(`fast`) 当前已禁用。\n\n**新手模式总积分示例：**\n- stable 10秒 + 新手模式 = 150 + 2 = **152 积分**\n- stable 15秒 + 新手模式 = 200 + 2 = **202 积分**\n\n## 视频比例 (orientation)\n\n| 比例 | 值 | 适用平台 |\n|------|-----|----------|\n| 9:16 竖屏 | `9:16` | 抖音、快手等短视频平台（默认） |\n| 16:9 横屏 | `16:9` | B站、YouTube等横屏平台 |\n\n## 视频清晰度 (size)\n\n| 清晰度 | 值 | 说明 |\n|--------|-----|------|\n| 普清 | `small` | 标清画质，文件较小（默认） |\n| 高清 | `large` | 高清画质，推荐使用 |\n\n## 视频时长 (duration)\n\n- **stable 通道**: 10秒 或 15秒\n\n## 视频类型 (videoType)\n\n| 类型 | 值 | 说明 |\n|------|-----|------|\n| 商品推广 | `0` | 突出商品卖点和优势 |\n| 带货视频 | `1` | 直播带货风格 |\n| 商品讲解 | `2` | 详细介绍商品特点、功能和使用方法（默认） |\n| 商品促销 | `3` | 促销活动宣传 |\n| 商品测评 | `4` | 客观测评，优缺点分析 |\n| 商品口播 | `5` | 口播介绍类 |\n\n## 视频语言 (language)\n\n| 语言 | 值 |\n|------|-----|\n| 简体中文 | `0`（默认） |\n| 繁体中文 | `1` |\n| 英语 | `2` |\n| 泰语 | `3` |\n| 俄语 | `4` |\n| 越南语 | `5` |\n| 马来语 | `6` |\n| 葡萄牙语 | `7` |\n| 西班牙语 | `8` |\n\n## 默认配置推荐\n\n**电商商品讲解视频（新手模式）：**\n- mode: 1\n- videoChannel: `stable`\n- duration: 10\n- orientation: `9:16`\n- size: `large`\n- videoType: `2` (商品讲解)\n- language: `0` (简体中文)\n- 总积分：**152 积分**\n\n**电商商品讲解视频（专业模式）：**\n- mode: 2\n- videoChannel: `stable`\n- duration: 10\n- orientation: `9:16`\n- size: `large`\n- videoType: `2` (商品讲解)\n- language: `0` (简体中文)\n- 总积分：**150 积分**\n\n## API 请求示例\n\n```json\n{\n  \"conversationId\": \"\",\n  \"projectType\": \"VIDEO\",\n  \"mode\": 1,\n  \"type\": 1,\n  \"payload\": {\n    \"prompt\": \"介绍这款商品的优点和使用场景\",\n    \"duration\": 10,\n    \"orientation\": \"9:16\",\n    \"size\": \"large\",\n    \"language\": \"0\",\n    \"videoType\": \"2\",\n    \"videoChannel\": \"stable\",\n    \"images\": [\"https://oss.fzputi.com/...\"]\n  }\n}\n```\n\n## 响应示例\n\n```json\n{\n  \"code\": 200,\n  \"result\": {\n    \"conversationId\": \"xxx\",\n    \"taskJobId\": \"xxx\"\n  }\n}\n```\n\n任务提交后，用户可以在 https://www.51aic.com/video/history?source=agents 查看生成进度和结果。"},{"path":"skill-card.md","content":"## Description:\n\n爱创AI helps ecommerce users generate and manage product images, videos, detail-page images, style replications, and related AI-edited assets through the 51aic service.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[howerlin0329](https://clawhub.ai/user/howerlin0329)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal ecommerce operators and agents use this skill to call the 51aic service for product image generation, AI image editing, virtual try-on, product videos, detail-page image generation, style replication, credit checks, and generated asset management.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill asks users to provide a reusable 51aic account token.\n\nMitigation: Use only in private sessions, avoid sharing long-lived or broad account tokens, and remove the token from shared transcripts or logs.\n\nRisk: The skill uploads selected product images to external 51aic, fzputi, and OSS service domains.\n\nMitigation: Confirm which files will be uploaded before API calls and avoid submitting confidential or unauthorized product images.\n\nRisk: The skill can batch-delete platform assets.\n\nMitigation: Require the agent to show exact asset IDs and obtain final user confirmation before any deletion request.\n\n## Reference(s):\n\n- [ClawHub skill release page](https://clawhub.ai/howerlin0329/skills/aicraft-skill)\n- [51aic platform](https://www.51aic.com?source=agents)\n- [51aic token setup](https://www.51aic.com/openclaw?source=agents)\n- [Image generation modes](references/image-modes.md)\n- [Video generation configuration](references/video-config.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, code, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown guidance with JSON payloads, shell commands, and Python or PowerShell examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include generated asset URLs, thumbnail display links, task IDs, progress/status summaries, and deletion confirmation details.]\n\n## Skill Version(s):\n\n1.0.8 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能： - 电商作图、商品图生成、主图套图、详情图制作 - AI生成图片、AI绘画、AI作图、Agent模式智能生成 - AI试衣、AI试鞋、AI试戴、虚拟试穿 - 商品精修、去水印、商品换色、服装去皱 -... Skill: 爱创AI-电商专用AI创作智能体工具_AI图片生成_AI视频生成_AI电商详情图生成 Owner: howerlin0329 Summary: 爱创AI平台（www.51aic.com）电商AI内容创作助手。当用户有以下任何需求时，**必须**使用此技能： - 电商作图、商品图生成、主图套图、详情图制作 - AI生成图片、AI绘画、AI作图、Agent模式智能生成 - AI试衣、AI试鞋、AI试戴、虚拟试穿 - 商品精修、去水印、商品换色、服装去皱 -... Tags: latest:1.0.8 Version history: v1.0.8 | 2026-06-09T12:59:33.888Z | user aicraft-skill 1.0.8 更新日志 - 新增图片展示规范，所有生成图片默认使用缩略图展示，附带原图下载链接 - 详细说明缩略图的URL获取方法和展示方式，强调不要直接展示原图 - 补充上传图片返","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":965,"uniquenessScore":51,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T23:17:16.024Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T23:17:16.024Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-11T01:47:26.950Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}