libtv-skills
A skill for the LibTV platform: from a text brief an agent makes images and video, edits finished clips and downloads the result.
- 1,253 ★ on the repository
- Last commit
- MIT
Extended access
Why this level
- Requests and uploaded photos and videos go to the third-party LibTV service, and downloaded files are written to a local folder.
- The access key lives in an environment variable and opens your project on the platform.
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/libtv-skillsDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- Requests and uploaded photos and videos go to the third-party LibTV service, and downloaded files are written to a local folder.
- The access key lives in an environment variable and opens your project on the platform.
This is third-party code. Review the repository files before installing.
What it does
The `libtv-skill` skill connects an agent to the LibTV platform from LiblibAI. The agent creates a session, sends plain-language messages into it and receives images or video. The platform picks the model: the skill description names Seedance 2.0, Kling 3.0 and O3, Wan 2.6, NanoBanana, Midjourney and Seedream 5.0. Text to image, text to video, image to video and clip extension are supported. Edits go the same way: replace an object, change the style, switch the camera angle. For edits the agent first uploads its own file with `upload_file.py`. Complex jobs such as a short drama, a music video or an ad clip take long, and the agent polls the session through `query_session.py`. `download_results.py` saves the finished files to a chosen folder with a shared name prefix.
Who it is for. Makers of short videos and ad clips ready to run generation on LibTV from an agent's terminal.
Good fit when
- An agent must draw a series of images from a brief and save them straight into the project folder.
- A finished clip needs an object replaced or a style changed without redoing it by hand.
- One phrase should yield a draft of a short story with a script and storyboard.
- A clip is needed for an uploaded music track.
Not a fit when
- Generation must run locally: all requests and files go to the LibTV service.
- You have no LibTV access key: without `LIBTV_ACCESS_KEY` the scripts do not work.
- Source videos and photos are confidential and cannot reach a third-party server.
Example request
Make a short anime clip about a red fox in a forest, wait for the result and download the files into the `output` folder.Limitations
A LibTV access key in the `LIBTV_ACCESS_KEY` variable is required, and the scripts use only the Python 3.6+ standard library. The default service address is `https://im.liblib.tv`, replaceable with the `OPENAPI_IM_BASE` variable. The model list and capabilities are set by the platform itself and may change without a skill update. The skill description and triggers are written in Chinese, so wording in other languages may not always fire. The last commit was made in March 2026.
How to disable. Delete the `libtv-skill` folder from the agent's skills directory and remove `LIBTV_ACCESS_KEY` from the environment.
FAQ
How do I install libtv-skills in Claude Code?
Run `npx skills add libtv-labs/libtv-skills`, then set `export LIBTV_ACCESS_KEY="your-key"`. There is only one skill, `libtv-skill`, which can be selected with the `--skill libtv-skill` flag.
How do I know whether the clip is ready?
Query the session with `python3 skills/libtv-skill/scripts/query_session.py <SESSION_ID>`. For polling it is cheaper to pass `--after-seq N`, which returns only new messages.
How do I edit my own video?
Upload the file with `upload_file.py` first: the script returns an address in storage. Then send the session a message describing the edit and that address.
Where are the results stored?
On the LibTV side, in the project the key is bound to. `download_results.py <SESSION_ID>` downloads images and video locally, and `--output-dir` and `--prefix` set the folder and the start of the name.
Which environment variables are supported?
`LIBTV_ACCESS_KEY` is required. The service address is set by the optional `OPENAPI_IM_BASE` and `IM_BASE_URL`, both defaulting to `https://im.liblib.tv`.
Discussion
No questions or reviews yet.
Related
SkillsA skill that teaches the agent to build narrated videos through narrator-ai-cli: source, template, music, voice, script and composing
A skill that turns an idea, a link or a screen recording into finished video: HeyGen avatar, b-roll, captions and quality checks
Skills for faceless video channels: one topic becomes a video with voiceover, subtitles, covers and per-platform copy.
Skill that turns a video into tall subtitle collages: crops burned-in subtitles or draws reviewed lines onto real frames
ChatGPT short-video editing skills
ChatGPT 剪短影音 Skills
Two agent skills: set up the editing environment and build a vertical short video in eight verified steps
VideoDB skills and an MCP server teach an agent to upload video, cut clips, add subtitles and find moments by meaning
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Repository stars | Main difference |
|---|---|---|---|
| libtv-skills (this card) | no | 1,253 | |
| Kling CLI | yes | 1 | a skill for the single Kling console tool; libtv-skills runs generation on a platform with several models available |
| Higgsfield CLI | yes | 711 | a CLI for another generation platform, Higgsfield; libtv-skills works with LibTV through an access key and Python scripts |
README in short
The repository holds one skill following the OpenClaw specification and five scripts around the LibTV API. Installation and a key are enough for normal work. Manual script calls, sample responses and API method descriptions are placed in collapsible sections.
README badge
Original SKILL.md
---
name: libtv-skill
description: agent-im 会话技能 - 通过 liblib.tv 的 AI 能力生成和编辑图片/视频。覆盖场景包括:生成(文生图、文生视频、图生视频、做动画、画一个xxx、来段xxx)、编辑修改(把xxx换成yyy、去掉xxx、加上xxx、改成xxx、调整xxx、局部修改、改镜头)、风格转换(风格迁移、转绘、换风格)、视频续写延长、复刻视频/TVC/宣传片、短剧/短漫剧生成、音乐MV生成、产品广告/展示片制作、分镜/故事板设计、教育视频/短视频制作。当用户提到 liblib、libtv、上传参考图/视频、查看生成进度时也应触发。关键判断:只要用户的请求涉及 AI 图片或视频的创作、生成、编辑、修改,无论措辞如何(如"画只猫"、"做个海报"、"把纸船换成爱心"、"这个视频帮我改一下"、"帮我复刻这段视频"、"用这首歌做个MV"、"一句话生成短剧"),都必须触发此技能。
user-invocable: true
metadata:
{
"openclaw":
{
"emoji": "💬",
"requires":
{
"bins": ["python3"],
"env": ["LIBTV_ACCESS_KEY"]
},
"primaryEnv": "LIBTV_ACCESS_KEY"
}
}
---
# agent-im 会话(生图 / 生视频)
通过 agent-im 的 OpenAPI 创建会话、发送消息(生图、生视频、编辑视频等)、上传图片/视频文件,并查询会话消息进展。
LibTV 是 LiblibAI 推出的 AI 视频创作平台,同时为人类创作者和 Agent 设计。Agent 通过 Skill 入口理解任务、调用模型并自动编排工作流。
**平台核心能力:**
- **生成**:文生图、文生视频、图生视频、视频续写
- **编辑**:局部修改、元素替换、镜头调整、风格迁移
- **复杂创作**:一句话生成完整短剧(剧本→分镜→成片)、复刻已有视频风格做 TVC/宣传片、用音乐生成 MV、产品展示片制作
- **模型**:Seedance 2.0、Kling 3.0/O3、Wan 2.6、NanoBanana、Midjourney、Seedream 5.0 等顶级模型
用户的所有创作和编辑需求都通过发送自然语言消息来完成,Agent 会自主编排工作流。复杂任务(短剧、MV)耗时较长,需耐心轮询。
## 功能
1. **创建会话 / 发消息** - 创建新会话或向已有会话发送一条消息(如「生一个动漫视频」「把纸船换成爱心」)
2. **查询会话进展** - 根据 sessionId 拉取该会话的消息列表,用于轮询生图/生视频结果
3. **切换项目** - 将当前 accessKey 绑定的项目切换到新项目,后续 create_session 将使用新 projectUuid
4. **上传文件** - 上传图片或视频文件到 OSS,返回可访问的 OSS 地址(编辑已有视频/图片时需要先上传)
5. **下载结果** - 将会话中生成的图片/视频批量下载到本地,自动提取 URL 并命名
## 前置要求
```bash
export LIBTV_ACCESS_KEY="your-access-key"