1实现原理 · 为什么它能做到
执行体是一个 Python CLI(scripts/manga_style_video.py):用户给自然语言 prompt,加 --style 指定画风,可选 --image 参考图。
skills/canghe-manga-style-video/SKILL.md
python3 scripts/manga_style_video.py "女孩在樱花树下读书"
这里在做什么:SKILL.md 只给用法,真正干活的是自带脚本。
风格即模板:MANGA_STYLES 字典把 8 个风格 code 映射到一段中/英风格提示词,最终把用户描述与风格词拼成完整提示词。
skills/canghe-manga-style-video/scripts/manga_style_video.py
full_prompt = f"{prompt},{style_prompt}"
这里在做什么:所谓「内置专业漫画风格描述词」就是这段字符串拼接。
图生视频:参考图读成 base64 并以 data URI 放进请求 content,用于保持角色一致性。
skills/canghe-manga-style-video/scripts/manga_style_video.py
img_url = f"data:image/{mime_type};base64,{img_base64}"
这里在做什么:先把本地图片编码,再与文本一起组成请求的多模态 content。
凭证取自环境变量 ARK_API_KEY(先 load_env() 加载 .env,再 require_env_key 强校验)。
skills/canghe-manga-style-video/scripts/manga_style_video.py
return require_env_key("ARK_API_KEY")
这里在做什么:缺 key 直接报错退出;key 也可来自项目或用户 .env。
调用火山方舟 Seedance 异步任务:POST /contents/generations/tasks 建任务,再每 10 秒 GET tasks/{id} 轮询直到 succeeded/failed。
skills/canghe-manga-style-video/scripts/manga_style_video.py
BASE_URL = "https://ark.cn-beijing.volces.com/api/v3"
这里在做什么:BASE_URL 固定为火山方舟北京区,模型默认 doubao-seedance-1-5-pro-251215。
生成成功后用 curl 子进程下载视频(注释说是为避免 Python SSL 问题)。
skills/canghe-manga-style-video/scripts/manga_style_video.py
["curl", "-L", "-o", output_path, video_url, "--max-time", "120"],
这里在做什么:下载走 subprocess.run(['curl', ...]),参数以列表传递。
脚本显式关闭 TLS 证书校验(CERT_NONE),这是本 skill 判红档的直接依据。
skills/canghe-manga-style-video/scripts/manga_style_video.py
ssl_context.verify_mode = ssl.CERT_NONE
这里在做什么:脚本注释「忽略SSL验证」,随后用该 context 发所有 urllib 请求。
输出默认保存到 ~/Desktop/manga_{风格}_{时间戳}.mp4,可用 --output 覆盖;--no-wait 则只建任务不等待。
skills/canghe-manga-style-video/SKILL.md
manga_{风格}_{时间戳}.mp4
这里在做什么:文件名按「风格+时间戳」生成,随后 expanduser 落盘。
2核心能力
018 种内置漫画风格(japanese/ghibli/chinese/cartoon/sketch/watercolor/manga_comic/chibi)
02图生视频:--image 参考图保持角色一致性
03自然语言描述 + --style 自动合成提示词,无需提示词工程
04时长/比例/分辨率控制(--duration/--ratio/--resolution)
05--list-styles 列出全部可用风格
06--no-wait 只创建任务不等待(fire-and-forget)
07生成完自动用 curl 下载视频到本地
08批量分镜:SKILL.md 给出 for 循环并发调用示例
3外部依赖
| Kind | Dependency / Endpoint |
|---|---|
| cli | python3(运行自带脚本) |
| cli | curl(下载生成视频) |
| api | 火山方舟 Seedance 视频生成 |
| package | 仓库共享模块 common/env_utils(load_env / require_env_key) |
4管控建议与判定依据
建议配套管控措施
面向 Agent
隔离环境,逐次授权
面向管理者
严格授权、全量审计、合规确认
判定依据(文件路径与关键语句摘要)
- SKILL.md / 脚本: 调用未公开或逆向工程的私有 API / 伪造客户端标识
- SKILL.md / 脚本参数: 包含绕过自动化检测、关闭宿主沙箱或跳过 SSL 证书校验
- scripts/: 执行本地脚本或命令: python3 scripts/manga_style_video.py(SKILL.md 明示的 CLI 入口,agent 在宿主执行)
- 网络端点: 声明外部网络访问: POST https://ark.cn-beijing.volces.com/api/v3/contents/generations/tasks(创建
- 本地工作目录: 文件读写与工件输出: --output 指定路径,或默认 ~/Desktop/manga_{style}_{timestamp}.mp4(curl -o 下载落盘)
审计说明: 红色:脚本显式关闭 TLS 证书校验(ssl_context.check_hostname=False、ssl_context.verify_mode=ssl.CERT_NONE,注释「忽略SSL验证」),命中分级范式的「安全降级(关 TLS 校验)」→ 红,且不看是否为默认路径。此外它读取 ARK_API_KEY 环境变量并把用户 prompt/参考图外发到火山方舟生成后端,本身属橙档特征,但红档轴只看安全降级,故定红。无逆向/冒充/批量采集,未使用 shell=True。
5第二遍独立确认
- [ok] 是否关闭 TLS 校验 — manga_style_video.py 开头 ssl_context.check_hostname=False、ssl_context.verify_mode=ssl.CERT_NONE(注释「忽略SSL验证」),后续两处 urllib.request.urlopen 均带该 context;确为安全降级,是判红档的直接依据。
- [ok] 网络调用清单是否完整 — urllib.request 两处(POST 创建任务、GET 轮询状态)+ curl 一处(下载视频);BASE_URL 固定为 ark.cn-beijing.volces.com/api/v3,全文无其它域名。
- [ok] 凭证读取点 — require_env_key('ARK_API_KEY') 为唯一 key 读取点;SKILL.md 前置要求段声明三级加载优先级(系统环境变量 / 当前目录 .env / 用户主目录 .env),与 load_env() 行为相符。
- [discrepancy] SKILL.md 参数表与 argparse 是否一致 — SKILL.md 参数说明表把 --output 的默认值标为「-」(无),但脚本在未传 --output 时会默认写 ~/Desktop/manga_{style}_{timestamp}.mp4——文档对默认输出目录的标注与实际不符。
- [unlocatable] env_utils 依赖能否在 skill 内定位 — 脚本把 ../../../common 插入 sys.path 后 import env_utils;该模块不在本 skill 目录内(bundle §1 仅列出 SKILL.md 与 1 个 py),bundle 内无法确认其存在与实现,属仓库级共享模块。
- [ok] 8 种风格数量 — SKILL.md 风格表列 8 种;脚本 MANGA_STYLES 字典正 8 个键(japanese/ghibli/chinese/cartoon/sketch/watercolor/manga_comic/chibi),两者吻合。
- [ok] quote 逐条复核 — 本报告全部 evidence.quote 以子串方式回 bundle 原文比对,无编造。
6结论
适合: 想做漫画风/手绘风短视频、把静图角色动起来的创作者;快速试验不同画风视频的场景。
不适合: 对传输安全或素材出网敏感的环境(脚本已降级 TLS);不能接受把图片上传第三方 API 的场景。
Install Agent-Ready
① Verified Mirror 2026-10-10
Option A · Direct DownloadDownload manga-style-video.tar.gz
sha256:
Option B · Copy Guide for Agentf8ad9990fab42dc5…agent 读 JSON 指南后会自动从本站下载安装,无需更多说明。
② Upstream GitHub
GitHub Repo ↗
Pinned to commit dd0bf35595.