Libtv Video
nexu-io/nexu
Seedance 2.0 video & image generation via LibTV Gateway - AI text-to-video, image-to-video, video continuation, style transfer, and text-to-image using Seedance 2.0 model.
agent-im 会话技能 - 通过 liblib.tv 的 AI 能力生成和编辑图片/视频。覆盖场景包括:生成(文生图、文生视频、图生视频、做动画、画一个xxx、来段xxx)、编辑修改(把xxx换成yyy、去掉xxx、加上xxx、改成xxx、调整xxx、局部修改、改镜头)、风格转换(风格迁移、转绘、换风格)、视频续写延长、复刻视频/TVC/宣传片、短剧/短漫剧生成、音乐MV生成、产品广告/展示…
$ npx skills add libtv-labs/libtv-skills --skill libtv-skill -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install libtv-labs/libtv-skills libtv-skill --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/libtv-labs/libtv-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/libtv-skill .claude/skills/libtv-skill && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "libtv-skill" agent skill from https://github.com/libtv-labs/libtv-skills/tree/main/skills/libtv-skill into .claude/skills/libtv-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "libtv-skill", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/libtv-labs/libtv-skills/tree/main/skills/libtv-skillType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add libtv-labs/libtv-skills --skill libtv-skill -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install libtv-labs/libtv-skills libtv-skill --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/libtv-labs/libtv-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/libtv-skill .agents/skills/libtv-skill && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "libtv-skill" agent skill from https://github.com/libtv-labs/libtv-skills/tree/main/skills/libtv-skill into .agents/skills/libtv-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "libtv-skill", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add libtv-labs/libtv-skills --skill libtv-skill -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install libtv-labs/libtv-skills libtv-skill --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/libtv-labs/libtv-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/libtv-skill .cursor/skills/libtv-skill && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "libtv-skill" agent skill from https://github.com/libtv-labs/libtv-skills/tree/main/skills/libtv-skill into .cursor/skills/libtv-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "libtv-skill", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/libtv-labs/libtv-skills.git --path skills/libtv-skill--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add libtv-labs/libtv-skills --skill libtv-skill -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install libtv-labs/libtv-skills libtv-skill --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/libtv-labs/libtv-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/libtv-skill .gemini/skills/libtv-skill && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "libtv-skill" agent skill from https://github.com/libtv-labs/libtv-skills/tree/main/skills/libtv-skill into .gemini/skills/libtv-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "libtv-skill", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install libtv-labs/libtv-skills libtv-skillInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add libtv-labs/libtv-skills --skill libtv-skill -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/libtv-labs/libtv-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/libtv-skill .github/skills/libtv-skill && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "libtv-skill" agent skill from https://github.com/libtv-labs/libtv-skills/tree/main/skills/libtv-skill into .github/skills/libtv-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "libtv-skill", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add libtv-labs/libtv-skills --skill libtv-skill -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install libtv-labs/libtv-skills libtv-skill --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/libtv-labs/libtv-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/libtv-skill .opencode/skills/libtv-skill && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "libtv-skill" agent skill from https://github.com/libtv-labs/libtv-skills/tree/main/skills/libtv-skill into .opencode/skills/libtv-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "libtv-skill", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
libtv-skillagent-im 会话技能 - 通过 liblib.tv 的 AI 能力生成和编辑图片/视频。覆盖场景包括:生成(文生图、文生视频、图生视频、做动画、画一个xxx、来段xxx)、编辑修改(把xxx换成yyy、去掉xxx、加上xxx、改成xxx、调整xxx、局部修改、改镜头)、风格转换(风格迁移、转绘、换风格)、视频续写延长、复刻视频/TVC/宣传片、短剧/短漫剧生成、音乐MV生成、产品广告/展示…
Libtv Skill is an agent skill from libtv-labs/libtv-skills. agent-im 会话技能 - 通过 liblib.tv 的 AI 能力生成和编辑图片/视频。覆盖场景包括:生成(文生图、文生视频、图生视频、做动画、画一个xxx、来段xxx)、编辑修改(把xxx换成yyy、去掉xxx、加上xxx、改成xxx、调整xxx、局部修改、改镜头)、风格转换(风格迁移、转绘、换风格)、视频续写延长、复刻视频/TVC/宣传片、短剧/短漫剧生成、音乐MV生成、产品广告/展示片制作、分镜/故事板设计、教育视频/短视频制作。当用户提到 liblib、libtv、上传参考图/视频、查看生成进度时也应触发。关键判断:只要用户的请求涉及 AI 图片或视频的创作、生成、编辑、修改,无论措辞如何(如"画只猫"、"做个海报"、"把纸船换成爱心"、"这个视频帮我改一下"、"帮我复刻这段视频"、"用这首歌做个MV"、"一句话生成短剧"),都必须触发此技能。
Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts (for example `scripts/_common.py`, `scripts/change_project.py` and `scripts/create_session.py`).
The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit c609246. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 6 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
python3From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
liblib.tvlibtv-res.liblib.artim.liblib.tvFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
LIBTV_ACCESS_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Libtv Skill loads about 1.7k tokens when it runs. Until then it costs about 99 tokens; SKILL.md has 234 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from libtv-labs/libtv-skills at commit c609246, republished under its MIT licence (© libtv-labs). 234 words, ~1,709 tokens.
.claude/skills/libtv-skill/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.通过 agent-im 的 OpenAPI 创建会话、发送消息(生图、生视频、编辑视频等)、上传图片/视频文件,并查询会话消息进展。
LibTV 是 LiblibAI 推出的 AI 视频创作平台,同时为人类创作者和 Agent 设计。Agent 通过 Skill 入口理解任务、调用模型并自动编排工作流。
平台核心能力:
用户的所有创作和编辑需求都通过发送自然语言消息来完成,Agent 会自主编排工作流。复杂任务(短剧、MV)耗时较长,需耐心轮询。
export LIBTV_ACCESS_KEY="your-access-key"可选:OPENAPI_IM_BASE 或 IM_BASE_URL,默认 https://im.liblib.tv。
无需安装额外依赖,仅使用 Python 标准库。
# 创建新会话并发送「生一个动漫视频」
python3 {baseDir}/scripts/create_session.py "生一个动漫视频"
# 向已有会话发送消息
python3 {baseDir}/scripts/create_session.py "再生成一张风景图" --session-id SESSION_ID
# 只创建/绑定会话,不发消息
python3 {baseDir}/scripts/create_session.py# 查询会话消息列表
python3 {baseDir}/scripts/query_session.py SESSION_ID
# 增量拉取(只返回 seq 大于 N 的消息)
python3 {baseDir}/scripts/query_session.py SESSION_ID --after-seq 5
# 附带项目地址(传入 create_session 返回的 projectUuid,结果中带 projectUrl)
python3 {baseDir}/scripts/query_session.py SESSION_ID --project-id PROJECT_UUID# 切换当前 accessKey 绑定的项目(后续创建会话将使用新项目)
python3 {baseDir}/scripts/change_project.py当用户提供了参考的文件地址时,进行上传,仅支持图片、视频,文件大小必须在200M以下。
# 上传图片
python3 {baseDir}/scripts/upload_file.py /path/to/image.png
# 上传视频
python3 {baseDir}/scripts/upload_file.py /path/to/video.mp4生成完成后,可以将会话中的所有图片/视频批量下载到本地。
# 从会话自动提取并下载所有结果
python3 {baseDir}/scripts/download_results.py SESSION_ID
# 指定输出目录
python3 {baseDir}/scripts/download_results.py SESSION_ID --output-dir ~/Desktop/my_project
# 指定文件名前缀(如 storyboard_01.png, storyboard_02.png ...)
python3 {baseDir}/scripts/download_results.py SESSION_ID --prefix "storyboard"
# 直接下载指定 URL 列表(不需要 session_id)
python3 {baseDir}/scripts/download_results.py --urls URL1 URL2 URL3 --output-dir ./output理解这些工作流,才能正确组合上面的脚本完成用户需求。
1. create_session.py "用户的描述" → 拿到 sessionId + projectUuid
2. 每隔 8 秒调用 query_session.py SESSION_ID --after-seq 0 轮询
3. 检查 messages:当出现 assistant 角色的消息且包含图片/视频 URL → 任务完成
4. 自动下载:download_results.py SESSION_ID --output-dir ~/Downloads/项目名 --prefix 有意义的前缀
5. 向用户展示:本地文件列表 + projectUrl(画布链接)生成完成后自动执行下载,不需要用户额外请求。下载目录和前缀根据任务语义自动命名(如分镜用 storyboard,角色设定用 character 等)。
1. upload_file.py /path/to/video.mp4 → 拿到 OSS URL
2. create_session.py "把四周的纸船都换成白色的纸爱心 参考视频:{oss_url}"
3. 后续同场景 1 的步骤 2-5用户给了文件路径 + 编辑指令 = 先上传文件,再把编辑指令和 OSS URL 一起发送。
1. upload_file.py /path/to/ref.png → 拿到 OSS URL
2. create_session.py "根据参考图生成xxx,参考图:{oss_url}"
3. 后续同场景 1 的步骤 2-51. create_session.py "新的描述" --session-id SESSION_ID
2. 后续同场景 1 的步骤 2-5--after-seq 0,后续用上次拿到的最大 seq 值create_session 返回:
{
"projectUuid": "aa3ba04c5044477cb7a00a9e5bf3b4d0",
"sessionId": "90f05e0c-...",
"projectUrl": "https://www.liblib.tv/canvas?projectId=aa3ba04c5044477cb7a00a9e5bf3b4d0"
}query_session 返回:
{
"messages": [
{"id": "msg-xxx", "role": "user", "content": "生一个动漫视频"},
{"id": "msg-yyy", "role": "assistant", "content": "..."}
],
"projectUrl": "https://www.liblib.tv/canvas?projectId=..."
}(projectUrl 仅在传入 --project-id 时存在)
change_project 返回:
{
"projectUuid": "新项目UUID",
"projectUrl": "https://www.liblib.tv/canvas?projectId=新项目UUID"
}upload_file 返回:
{
"url": "https://libtv-res.liblib.art/claw/{projectUuid}/{uuid}.png"
}download_results 返回:
{
"output_dir": "/Users/xxx/Downloads/libtv_results",
"downloaded": ["/Users/xxx/Downloads/libtv_results/01.png", "..."],
"total": 9
}query_session 返回的 messages 中 assistant 消息的 content 或结果里的视频/图片 URL,即「返回的结果」。create_session 返回的 projectUrl,或自行拼接 https://www.liblib.tv/canvas?projectId= + projectUuid。查询进展时若传入 --project-id PROJECT_UUID,query_session 会直接返回 projectUrl,便于一并展示。在任务完成时,同时给出:视频/图片结果链接 + 项目画布链接(projectUrl)。 过程中,不要给出 项目画布链接(projectUrl)。
你(用户侧 Agent)的职责是搬运工,不是创作者。后端有专门的 Agent 负责理解需求、拆解分镜、编排工作流、选模型、写 prompt。你要做的只有三件事:
upload_file.py 拿到 OSS URLcreate_session.py绝对不要做的事:
后端 Agent 对模型能力、参数配置、prompt 工程远比用户侧更专业。用户侧越俎代庖只会降低生成质量,换个弱模型更是灾难。
正确示例:
用户说:「帮我推演后续的故事,来个分镜大爆炸,帮我出一个16:9的九宫格的图。新建一个任务。」
用户给了参考图:/path/to/ref.png
→ upload_file.py /path/to/ref.png → 拿到 oss_url
→ create_session.py "帮我推演后续的故事,来个分镜大爆炸,帮我出一个16:9的九宫格的图。参考图:{oss_url}"
→ 轮询 → 下载 → 展示错误示例:
❌ 用户侧自己先写了个九宫格分镜表(对峙、交锋、危机...)
❌ 然后把自己编的描述发给后端
❌ 或者拆成9次 create_session 分别发送Authorization: Bearer <LIBTV_ACCESS_KEY>message,仅创建/绑定会话,不会调用 SendMessage--after-seq 做增量拉取,便于轮询新消息(含 assistant 回复与生图/生视频结果)https://www.liblib.tv/canvas?projectId= + projectUuidhttps://libtv-res.liblib.art/claw/{projectUuid}/{uuid}{ext}© libtv-labs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (scripts) in skills/libtv-skill of libtv-labs/libtv-skills.
Open the folder on GitHubat commit c609246
We found 4 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in libtv-labs/libtv-skills, which our catalogue first saw on October 7, 2026.
Libtv Skill next to the 2 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Libtv Skill this skilllibtv-labs/libtv-skills | 1.1k | 2 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Libtv Videonexu-io/nexu | 3.3k | — | ~3.5k | Automated safety check: Pass | MIT | |
| Space Video Broll SketchSpaceZephyr/creator-buddy | 1.6k | — | ~1k | Automated safety check: Pass | None |
nexu-io/nexu
Seedance 2.0 video & image generation via LibTV Gateway - AI text-to-video, image-to-video, video continuation, style transfer, and text-to-image using Seedance 2.0 model.
SpaceZephyr/creator-buddy
文章转手绘图解 B-roll——输入公众号文章(正文或链接),优先抽取原文配图,把文章逻辑做成一支手绘线稿风格的动态图解视频,并调用真实视频模型(火山引擎 Seedance 2.0 或 libtv Agent)逐帧生成「手绘生长」动效,拼成成片。白底、黑色单线图标、单一蓝色强调、细曲线箭头,默认 4:3,垫在口播下方。当用户说「文章转图解视频」「手绘图解…
agent-im 会话技能 - 通过 liblib.tv 的 AI 能力生成和编辑图片/视频。覆盖场景包括:生成(文生图、文生视频、图生视频、做动画、画一个xxx、来段xxx)、编辑修改(把xxx换成yyy、去掉xxx、加上xxx、改成xxx、调整xxx、局部修改、改镜头)、风格转换(风格迁移、转绘、换风格)、视频续写延长、复刻视频/TVC/宣传片、短剧/短漫剧生成、音乐MV生成、产品广告/展示…. Libtv Skill is an agent skill from libtv-labs/libtv-skills.
Run `npx skills add libtv-labs/libtv-skills --skill libtv-skill -a claude-code`. Or copy the skill folder (skills/libtv-skill in libtv-labs/libtv-skills) into .claude/skills/libtv-skill in your project. Claude Code loads it when a task matches its description.
Run `npx skills add libtv-labs/libtv-skills --skill libtv-skill -a codex`. Or copy the skill folder (skills/libtv-skill in libtv-labs/libtv-skills) into .agents/skills/libtv-skill in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add libtv-labs/libtv-skills --skill libtv-skill -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/libtv-skill, .gemini/skills/libtv-skill, .github/skills/libtv-skill and .opencode/skills/libtv-skill in your project.
Going by SKILL.md and its folder, Libtv Skill needs Python for the scripts in its folder, the command-line tools its instructions call (python3) and credentials named LIBTV_ACCESS_KEY. Our summary lists: Python 3; A credential in LIBTV_ACCESS_KEY.
SKILL.md names 3 domains. In commands or code: liblib.tv, libtv-res.liblib.art and im.liblib.tv; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Libtv Skill is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.7k tokens (SKILL.md is roughly 6.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Libtv Skill: Libtv Video (nexu-io/nexu, 3.3k stars) and Space Video Broll Sketch (SpaceZephyr/creator-buddy, 1.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
libtv-labs (a GitHub organization) maintains it in libtv-labs/libtv-skills, which has 1,138 GitHub stars. The repository was last updated on March 18, 2026.
Source: libtv-labs/libtv-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.