{"id":"a69879c4-e30a-468f-90de-6a218a782d70","shortId":"LrfpSa","kind":"skill","title":"chanjing-ai-creation","tagline":">-","description":"# Chanjing AI Creation\n\n## 功能说明\n\n调用蝉镜 **AI 创作** Open API：**提交任务**、**轮询状态**、**列表与单条查询**；仅在用户明确要求时用 `download_result.py` **可选下载**输出。需**读写**本地 `credentials.json` 并访问 Open API。跨模型文生图/视频等由 `submit_task.py` 参数与透传体决定。本 skill 脚本**不**依赖 ffmpeg/ffprobe。\n\n## 运行依赖\n\n- **python3** 与同仓库 `scripts/*.py`\n- **无** ffmpeg/ffprobe 门控\n\n## 环境变量与机器可读声明\n\n- 环境变量键名与说明：**`manifest.yaml`**（`environment` 段）及本文\n- 变量、凭据、合规 **`permissions`**、**`clientPermissions`、`agentPolicy`**：**`manifest.yaml`**\n\n## 使用命令\n\n- **ClawHub**（slug 以注册表为准）：`clawhub run chanjing-ai-creation`\n- **本仓库示例**：`python skills/chanjing-ai-creation/scripts/submit_task.py …`（见正文 **Standard Workflow**）\n\n---\n\n## 登记与审稿（单一事实来源）\n\n主凭据、可选 env、下载信任边界等：**以 `manifest.yaml` 为准**。本篇从 **When to Use** 起写业务能力。\n\n## When to Use This Skill\n\n当用户要做这些事时使用本 Skill：\n\n* **提交**图片或视频 AI 创作任务（`submit_task.py`）\n* **列表 / 单条查询**任务（`list_tasks.py`、`get_task.py`）\n* **轮询**异步结果直至完成（`poll_task.py`）\n* 仅在用户明确要求时**下载**输出（`download_result.py`）\n\n上述流程依赖读写本地 `credentials.json` 并调用 `open-api.chanjing.cc`。\n\n如果需求更接近“文生数字人”，优先使用 `chanjing-text-to-digital-person`。  \n如果需求更接近“已有数字人视频合成”，优先使用 `chanjing-video-compose`。\n\n## Preconditions\n\n执行本 Skill 前，必须先通过 `chanjing-credentials-guard` 完成 AK/SK 与 Token 校验。\n\n本 Skill 与 guard 共用：\n\n* `~/.chanjing/credentials.json`\n* `https://open-api.chanjing.cc`\n\n无凭证时，脚本会自动打开蝉镜登录页，并提示配置命令。\n\n### 审阅与安全（凭据）\n\n与 **Purpose / Credentials / Persistence**、**`download_result.py`** 信任边界相关的逐项说明见 **`manifest.yaml`**。\n\n**运行时范围**：本 Skill 的说明与脚本仅服务于已声明用途——读取本地 **`credentials.json`**、调用蝉镜 **Open API** 端点；**不**在轮询或查询成功时自动落盘生成物，**仅**在用户显式执行 **`download_result.py`** 时下载资源。\n\n**`_auth.py` 与仓库布局**：鉴权辅助可能打开系统浏览器，或按相对路径调用同仓库下的 **`chanjing-credentials-guard`** 脚本（例如 `open_login_page.py`）。这假设当前工作区为 **chan-skills 式多 Skill 目录结构**，或已单独安装并具备等效路径的 guard skill；否则将回退为仅打开登录页 URL。\n\n**敏感数据与持久化**：预期仅处理 **`credentials.json`** 中的 `app_id`、`secret_key`、`access_token`（及与 token 生命周期相关的字段，见 `manifest.yaml`）。将 **`access_token` 写入磁盘** 是有意设计且已文档化，对 API 客户端而言通常可接受；但在**多人共用主机**、**全盘备份/同步到不可信存储**等场景下，磁盘上的 token 会**扩大泄露面**，需按环境自行评估。\n\n## Standard Workflow\n\nAI 创作的主接口是统一提交器：\n\n1. 调用 `submit_task.py` 提交图片或视频生成任务，得到 `unique_id`\n2. 调用 `poll_task.py` 轮询直到成功，得到 `output_url`\n3. 如需回看任务参数或错误原因，调用 `get_task.py`\n4. 如需看历史记录，调用 `list_tasks.py`\n5. 只有在用户明确要求保存到本地时，才调用 `download_result.py`\n\n这个 skill 默认做成“通用任务提交器”：\n\n* 对常见图片/视频模型，优先使用脚本提供的通用参数\n* 对特殊模型参数，使用 `--body-file` 或 `--body-json` 透传完整请求体\n\n## Covered APIs\n\n本 Skill 当前覆盖：\n\n* `POST /open/v1/ai_creation/task/submit`\n* `POST /open/v1/ai_creation/task/page`\n* `GET /open/v1/ai_creation/task`\n\n## Scripts\n\n脚本目录：\n\n* `skills/chanjing-ai-creation/scripts/`\n\n| 脚本 | 说明 |\n|------|------|\n| `_auth.py` | 读写 `credentials.json`、获取或刷新 `access_token` |\n| `submit_task.py` | 提交 AI 创作任务，输出 `unique_id` |\n| `get_task.py` | 获取单个任务详情 |\n| `list_tasks.py` | 列出图片或视频任务 |\n| `poll_task.py` | 轮询任务直到完成，默认输出第一个结果地址 |\n| `download_result.py` | 下载图片或视频到 `outputs/ai-creation/` |\n\n## Usage Examples\n\n示例 1：Seedream 3.0 文生图\n\n```bash\nTASK_ID=$(python3 skills/chanjing-ai-creation/scripts/submit_task.py \\\n  --creation-type 3 \\\n  --model-code \"doubao-seedream-3.0-t2i\" \\\n  --prompt \"赛博朋克城市夜景，霓虹灯，雨夜，电影镜头\" \\\n  --aspect-ratio \"16:9\" \\\n  --clarity 2048 \\\n  --number-of-images 1)\n\npython3 skills/chanjing-ai-creation/scripts/poll_task.py --unique-id \"$TASK_ID\"\n```\n\n示例 2：腾讯 Kling v2.1 Master 图生视频\n\n```bash\nTASK_ID=$(python3 skills/chanjing-ai-creation/scripts/submit_task.py \\\n  --creation-type 4 \\\n  --model-code \"tx_kling-v2-1-master\" \\\n  --ref-img-url \"https://res.chanjing.cc/chanjing/res/aigc_creation/photo/start.jpg\" \\\n  --ref-img-url \"https://res.chanjing.cc/chanjing/res/aigc_creation/photo/end.jpg\" \\\n  --prompt \"角色从静止到转身，镜头平滑移动，叙事感强\" \\\n  --aspect-ratio \"9:16\" \\\n  --clarity 1080 \\\n  --quality-mode pro \\\n  --video-duration 5)\n\npython3 skills/chanjing-ai-creation/scripts/poll_task.py --unique-id \"$TASK_ID\"\n```\n\n示例 3：直接透传完整 JSON\n\n```bash\npython3 skills/chanjing-ai-creation/scripts/submit_task.py \\\n  --body-file ./payload.json\n```\n\n## Download Rule\n\n下载是显式动作，不是默认动作：\n\n* `poll_task.py` 成功后应先返回远端 `output_url`\n* 不要自动下载结果文件\n* 只有当用户明确表达“下载到本地”“保存到 outputs”“帮我落盘”时，才执行 `download_result.py`\n\n## Output Convention\n\n默认本地输出目录：\n\n* `outputs/ai-creation/`\n\n## Additional Resources\n\n更多接口细节见：\n\n* `skills/chanjing-ai-creation/reference.md`\n* `skills/chanjing-ai-creation/examples.md`","tags":["chanjing","creation","chan","skills","chanjing-ai","agent-skills","claude-code-skills","openclaw-skills"],"capabilities":["skill","source-chanjing-ai","skill-chanjing-ai-creation","topic-agent-skills","topic-claude-code-skills","topic-openclaw-skills","topic-skills"],"categories":["chan-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/chanjing-ai/chan-skills/chanjing-ai-creation","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add chanjing-ai/chan-skills","source_repo":"https://github.com/chanjing-ai/chan-skills","install_from":"skills.sh"}},"qualityScore":"0.457","qualityRationale":"deterministic score 0.46 from registry signals: · indexed on github topic:agent-skills · 14 github stars · SKILL.md body (4,277 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T13:03:30.704Z","embedding":null,"createdAt":"2026-04-19T00:40:56.412Z","updatedAt":"2026-04-22T13:03:30.704Z","lastSeenAt":"2026-04-22T13:03:30.704Z","tsv":"'/.chanjing/credentials.json':152 '/chanjing/res/aigc_creation/photo/end.jpg':410 '/chanjing/res/aigc_creation/photo/start.jpg':403 '/open/v1/ai_creation/task':295 '/open/v1/ai_creation/task/page':293 '/open/v1/ai_creation/task/submit':291 '/payload.json':447 '1':242,327,364,395 '1080':421 '16':356,419 '2':249,373 '2048':359 '3':256,339,438 '3.0':329,346 '4':260,387 '5':264,429 '9':357,418 'access':213,221,305 'addit':469 'agentpolici':57 'ai':3,6,10,67,98,240,309 'ak/sk':143 'api':13,27,174,226,286 'app':209 'aspect':354,416 'aspect-ratio':353,415 'auth.py':182,301 'bash':331,379,441 'bodi':278,282,445 'body-fil':277,444 'body-json':281 'chan':195 'chan-skil':194 'chanj':2,5,66,121,130,139,187 'chanjing-ai-cr':1,65 'chanjing-credentials-guard':138,186 'chanjing-text-to-digital-person':120 'chanjing-video-compos':129 'clariti':358,420 'clawhub':60,63 'clientpermiss':56 'code':342,390 'compos':132 'convent':466 'cover':285 'creation':4,7,68,337,385 'creation-typ':336,384 'credenti':140,161,188 'credentials.json':24,114,171,207,303 'digit':124 'doubao':344 'doubao-seedream':343 'download':448 'download_result.py':18,112,163,180,267,321,464 'durat':428 'env':79 'environ':49 'exampl':325 'ffmpeg/ffprobe':37,44 'file':279,446 'get':294 'get_task.py':105,259,314 'guard':141,150,189,201 'id':210,248,313,333,369,371,381,434,436 'imag':363 'img':399,406 'json':283,440 'key':212 'kling':375,393 'kling-v2':392 'list_tasks.py':104,263,316 'manifest.yaml':48,58,82,165,219 'master':377,396 'mode':424 'model':341,389 'model-cod':340,388 'number':361 'number-of-imag':360 'open':12,26,173 'open-api.chanjing.cc':116,153 'open_login_page.py':192 'output':254,454,460,465 'outputs/ai-creation':323,468 'permiss':55 'persist':162 'person':125 'poll_task.py':108,251,318,452 'post':290,292 'precondit':133 'pro':425 'prompt':348,411 'purpos':160 'py':42 'python':70 'python3':39,334,365,382,430,442 'qualiti':423 'quality-mod':422 'ratio':355,417 'ref':398,405 'ref-img-url':397,404 'res.chanjing.cc':402,409 'res.chanjing.cc/chanjing/res/aigc_creation/photo/end.jpg':408 'res.chanjing.cc/chanjing/res/aigc_creation/photo/start.jpg':401 'resourc':470 'rule':449 'run':64 'script':41,296 'secret':211 'seedream':328,345 'skill':33,93,95,135,148,168,196,198,202,269,288 'skill-chanjing-ai-creation' 'skills/chanjing-ai-creation/examples.md':473 'skills/chanjing-ai-creation/reference.md':472 'skills/chanjing-ai-creation/scripts':298 'skills/chanjing-ai-creation/scripts/poll_task.py':366,431 'skills/chanjing-ai-creation/scripts/submit_task.py':71,335,383,443 'slug':61 'source-chanjing-ai' 'standard':73,238 'submit_task.py':30,100,244,307 't2i':347 'task':332,370,380,435 'text':122 'token':145,214,216,222,234,306 'topic-agent-skills' 'topic-claude-code-skills' 'topic-openclaw-skills' 'topic-skills' 'tx':391 'type':338,386 'uniqu':247,312,368,433 'unique-id':367,432 'url':204,255,400,407,455 'usag':324 'use':87,91 'v2':394 'v2.1':376 'video':131,427 'video-dur':426 'workflow':74,239 '上述流程依赖读写本地':113 '下载':110 '下载信任边界等':80 '下载到本地':458 '下载图片或视频到':322 '下载是显式动作':450 '不':35,176 '不是默认动作':451 '不要自动下载结果文件':456 '与':144,149,159 '与仓库布局':183 '与同仓库':40 '中的':208 '为准':83 '主凭据':77 '仅':178 '仅在用户明确要求时':109 '仅在用户明确要求时用':17 '以':81 '以注册表为准':62 '任务':103 '优先使用':119,128 '优先使用脚本提供的通用参数':274 '会':235 '但在':228 '使用':276 '使用命令':59 '例如':191 '依赖':36 '保存到':459 '信任边界相关的逐项说明见':164 '全盘备份':230 '共用':151 '写入磁盘':223 '凭据':53,158 '列出图片或视频任务':317 '列表':101 '列表与单条查询':16 '创作':11 '创作任务':99,310 '创作的主接口是统一提交器':241 '前':136 '功能说明':8 '单一事实来源':76 '单条查询':102 '参数与透传体决定':31 '及与':215 '及本文':51 '变量':52 '叙事感强':414 '只有在用户明确要求保存到本地时':265 '只有当用户明确表达':457 '可选':78 '可选下载':19 '合规':54 '同步到不可信存储':231 '否则将回退为仅打开登录页':203 '图片或视频':97 '图生视频':378 '在用户显式执行':179 '在轮询或查询成功时自动落盘生成物':177 '多人共用主机':229 '如果需求更接近':117,126 '如需回看任务参数或错误原因':257 '如需看历史记录':261 '完成':142 '审阅与安全':157 '客户端而言通常可接受':227 '对':225 '对常见图片':272 '对特殊模型参数':275 '将':220 '已有数字人视频合成':127 '帮我落盘':461 '并提示配置命令':156 '并访问':25 '并调用':115 '异步结果直至完成':107 '式多':197 '当前覆盖':289 '当用户要做这些事时使用本':94 '得到':246,253 '必须先通过':137 '成功后应先返回远端':453 '或':280 '或已单独安装并具备等效路径的':200 '或按相对路径调用同仓库下的':185 '才执行':463 '才调用':266 '执行本':134 '扩大泄露面':236 '提交':96,308 '提交任务':14 '提交图片或视频生成任务':245 '敏感数据与持久化':205 '文生图':330 '文生数字人':118 '无':43 '无凭证时':154 '时':462 '时下载资源':181 '是有意设计且已文档化':224 '更多接口细节见':471 '本':32,147,167,287 '本仓库示例':69 '本地':23 '本篇从':84 '校验':146 '段':50 '环境变量与机器可读声明':46 '环境变量键名与说明':47 '生命周期相关的字段':217 '电影镜头':352 '登记与审稿':75 '的说明与脚本仅服务于已声明用途':169 '目录结构':199 '直接透传完整':439 '磁盘上的':233 '示例':326,372,437 '端点':175 '等场景下':232 '脚本':34,190,299 '脚本会自动打开蝉镜登录页':155 '脚本目录':297 '腾讯':374 '获取单个任务详情':315 '获取或刷新':304 '见':218 '见正文':72 '视频模型':273 '视频等由':29 '角色从静止到转身':412 '说明':300 '读写':22,302 '读取本地':170 '调用':243,250,258,262 '调用蝉镜':9,172 '赛博朋克城市夜景':349 '起写业务能力':88 '跨模型文生图':28 '轮询':106 '轮询任务直到完成':319 '轮询状态':15 '轮询直到成功':252 '输出':20,111,311 '运行依赖':38 '运行时范围':166 '这个':268 '这假设当前工作区为':193 '透传完整请求体':284 '通用任务提交器':271 '鉴权辅助可能打开系统浏览器':184 '镜头平滑移动':413 '门控':45 '雨夜':351 '需':21 '需按环境自行评估':237 '霓虹灯':350 '预期仅处理':206 '默认做成':270 '默认本地输出目录':467 '默认输出第一个结果地址':320","prices":[{"id":"1403eafd-f4e2-4066-b07a-650e32416999","listingId":"a69879c4-e30a-468f-90de-6a218a782d70","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"chanjing-ai","category":"chan-skills","install_from":"skills.sh"},"createdAt":"2026-04-19T00:40:56.412Z"}],"sources":[{"listingId":"a69879c4-e30a-468f-90de-6a218a782d70","source":"github","sourceId":"chanjing-ai/chan-skills/chanjing-ai-creation","sourceUrl":"https://github.com/chanjing-ai/chan-skills/tree/main/skills/chanjing-ai-creation","isPrimary":false,"firstSeenAt":"2026-04-19T00:40:56.412Z","lastSeenAt":"2026-04-22T13:03:30.704Z"}],"details":{"listingId":"a69879c4-e30a-468f-90de-6a218a782d70","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"chanjing-ai","slug":"chanjing-ai-creation","github":{"repo":"chanjing-ai/chan-skills","stars":14,"topics":["agent-skills","claude-code-skills","openclaw-skills","skills"],"license":null,"html_url":"https://github.com/chanjing-ai/chan-skills","pushed_at":"2026-03-28T05:19:27Z","description":"蝉系openclaw 技能库，聚焦电商内容创作，提供实用的 AI 工具及技能包","skill_md_sha":"b753c24f18e8a3c7177cac9c1bcfbb07d37b6689","skill_md_path":"skills/chanjing-ai-creation/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/chanjing-ai/chan-skills/tree/main/skills/chanjing-ai-creation"},"layout":"multi","source":"github","category":"chan-skills","frontmatter":{"name":"chanjing-ai-creation","description":">-"},"skills_sh_url":"https://skills.sh/chanjing-ai/chan-skills/chanjing-ai-creation"},"updatedAt":"2026-04-22T13:03:30.704Z"}}