#760 by GitHub stars

libtv-labs/libtv-skills

agent-im 会话技能 - 通过 liblib.tv 的 AI 能力生成和编辑图片/视频。覆盖场景包括:生成(文生图、文生视频、图生视频、做动画、画一个xxx、来段xxx)、编辑修改(把xxx换成yyy、去掉xxx、加上xxx、改成xxx、调整xxx、局部修改、改镜头)、风格转换(风格迁移、转绘、换风格)、视频续写延长、复刻视频/TVC/宣传片、短剧/短漫剧生成、音乐MV生成、产品广告/展示片制作、分镜/故事板设计、教育视频/短视频制作。当用户提到 liblib、libtv、上传参考图/视频、查看生成进度时也应触发。关键判断:只要用户的请求涉及 AI 图片或视频的创作、生成、编辑、修改,无

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

skills/libtv-skill/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

c609246c1eca → c609246c1eca

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → c609246c1eca

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit c609246c1eca69f6bc129bcbb5d64c36734e4a4a

1.2kGitHub stars
15stars in 7 days
1skill in this repository
0commits in 30 days

Heat

5.6
  • Star growth, last 7 daysAhead of 86% of tracked repositories
  • Star growth, last 24 hoursAhead of 94% of tracked repositories
  • Rank movement, last 7 daysAhead of 33% of tracked repositories
  • Commits, last 30 daysAhead of 0% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Aug 2, 2026Nov 7, 20261,237

Individual skills in this repository

How it works

libtv-skill

When your agent uses it

agent-im 会话技能 - 通过 liblib.tv 的 AI 能力生成和编辑图片/视频。覆盖场景包括:生成(文生图、文生视频、图生视频、做动画、画一个xxx、来段xxx)、编辑修改(把xxx换成yyy、去掉xxx、加上xxx、改成xxx、调整xxx、局部修改、改镜头)、风格转换(风格迁移、转绘、换风格)、视频续写延长、复刻视频/TVC/宣传片、短剧/短漫剧生成、音乐MV生成、产品广告/展示片制作、分镜/故事板设计、教育视频/短视频制作。当用户提到 liblib、libtv、上传参考图/视频、查看生成进度时也应触发。关键判断:只要用户的请求涉及 AI 图片或视频的创作、生成、编辑、修改,无论措辞如何(如"画只猫"、"做个海报"、"把纸船换成爱心"、"这个视频帮我改一下"、"帮我复刻这段视频"、"用这首歌做个MV"、"一句话生成短剧"),都必须触发此技能。

What it loads into context

Frontmatter

346 tokens

Always available to the agent

SKILL.md

3,232 tokens

When the skill is activated

Reference documents

0 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. 功能
  2. 前置要求
  3. 使用方法
  4. 典型工作流
  5. 输出格式
  6. 最终向用户展示时(OpenClaw)
  7. 核心原则:用户侧不做创作,只做传话
  8. 注意事项

Scripts executed separately

  • scripts/_common.py
  • scripts/change_project.py
  • scripts/create_session.py
  • scripts/download_results.py
  • scripts/query_session.py
  • scripts/upload_file.py

Files

  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • SKILL.mdcore11,469 bytes
  • scripts/_common.pyruns3,294 bytes
  • scripts/change_project.pyruns680 bytes
  • scripts/create_session.pyruns1,914 bytes
  • scripts/download_results.pyruns5,215 bytes
  • scripts/query_session.pyruns1,667 bytes
  • scripts/upload_file.pyruns3,521 bytes
Read SKILL.md

# 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)耗时较长,需耐心轮询。
View the complete source on GitHub

Skills included

  • libtv-skill

Repository facts

License
MIT
Created
Mar 16, 2026
Last pushed
Mar 18, 2026
Forks
122
Open issues
9
Project activity
Slowing

Rank over the last 12 weeks

Now #760 · best #572 · down 83 in 30 days

  1. #747 on Nov 1
  2. #750 on Nov 2
  3. #758 on Nov 3
  4. #757 from Nov 4 to Nov 5
  5. #755 on Nov 6
  6. #760 since Nov 7
73 earlier periods
  1. #558 on Aug 2
  2. #547 on Aug 8
  3. #553 on Aug 9
  4. #578 on Aug 10
  5. #579 on Aug 11
  6. #573 on Aug 12
  7. #577 on Aug 13
  8. #575 on Aug 14
  9. #559 on Aug 15
  10. #574 on Aug 16
  11. #577 on Aug 17
  12. #590 on Aug 18
  13. #581 from Aug 19 to Aug 20
  14. #588 on Aug 21
  15. #597 on Aug 23
  16. #596 on Aug 24
  17. #609 on Aug 25
  18. #594 on Aug 26
  19. #602 on Aug 27
  20. #613 on Aug 28
  21. #572 from Aug 29 to Aug 30
  22. #594 on Aug 31
  23. #608 on Sep 1
  24. #596 on Sep 2
  25. #599 on Sep 3
  26. #582 on Sep 4
  27. #592 on Sep 6
  28. #598 on Sep 7
  29. #615 on Sep 8
  30. #604 on Sep 9
  31. #607 on Sep 10
  32. #597 on Sep 11
  33. #599 on Sep 12
  34. #594 on Sep 13
  35. #615 on Sep 14
  36. #610 on Sep 15
  37. #623 on Sep 16
  38. #621 on Sep 17
  39. #623 on Sep 18
  40. #599 on Sep 19
  41. #611 on Sep 20
  42. #621 on Sep 21
  43. #637 on Sep 22
  44. #634 on Sep 23
  45. #605 from Sep 25 to Sep 26
  46. #627 on Sep 27
  47. #631 on Sep 28
  48. #662 on Sep 29
  49. #642 on Sep 30
  50. #620 on Oct 1
  51. #609 on Oct 3
  52. #629 on Oct 4
  53. #640 on Oct 6
  54. #646 on Oct 7
  55. #677 on Oct 8
  56. #658 on Oct 9
  57. #645 on Oct 10
  58. #643 on Oct 11
  59. #664 on Oct 12
  60. #658 on Oct 13
  61. #671 on Oct 14
  62. #659 on Oct 15
  63. #640 on Oct 18
  64. #673 on Oct 19
  65. #682 on Oct 20
  66. #685 on Oct 21
  67. #665 from Oct 22 to Oct 23
  68. #646 on Oct 24
  69. #732 on Oct 25
  70. #741 on Oct 28
  71. #742 on Oct 29
  72. #744 on Oct 30
  73. #748 on Oct 31

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 3, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 19 notes
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/libtv-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 59 signals by file

skills/libtv-skill/SKILL.md

  • Broad permissionsline 1
    Unsupported or unresolved allowed-tools declaration
  • Access to secretsline 13
    [Credential-related source omitted]
  • Access to secretsline 45
    [Credential-related source omitted]
  • Network accessline 48
    可选:`OPENAPI_IM_BASE` 或 `IM_BASE_URL`,默认 `https://im.liblib.tv`。
  • Network accessline 171
    "projectUuid": "aa3ba04c5044477cb7a00a9e5bf3b4d0",   "sessionId": "90f05e0c-...",   "projectUrl": "https://www.liblib.tv/canvas?projectId=aa3ba04c5044477cb7a00a9e5bf3b4d0"
  • Network accessline 172
    "sessionId": "90f05e0c-...",   "projectUrl": "https://www.liblib.tv/canvas?projectId=aa3ba04c5044477cb7a00a9e5bf3b4d0" }
  • Network accessline 173
    "projectUrl": "https://www.liblib.tv/canvas?projectId=aa3ba04c5044477cb7a00a9e5bf3b4d0"
  • Network accessline 182
    {"id": "msg-yyy", "role": "assistant", "content": "..."}   ],   "projectUrl": "https://www.liblib.tv/canvas?projectId=..."
  • Network accessline 183
    ],   "projectUrl": "https://www.liblib.tv/canvas?projectId=..." }
  • Network accessline 184
    "projectUrl": "https://www.liblib.tv/canvas?projectId=..."
  • Network accessline 191
    {   "projectUuid": "新项目UUID",   "projectUrl": "https://www.liblib.tv/canvas?projectId=新项目UUID"
  • Network accessline 192
    "projectUuid": "新项目UUID",   "projectUrl": "https://www.liblib.tv/canvas?projectId=新项目UUID" }
  • Network accessline 193
    "projectUrl": "https://www.liblib.tv/canvas?projectId=新项目UUID"
  • Network accessline 199
    {   "url": "https://libtv-res.liblib.art/claw/{projectUuid}/{uuid}.png"
  • Network accessline 200
    "url": "https://libtv-res.liblib.art/claw/{projectUuid}/{uuid}.png"
  • Network accessline 215
    - **视频地址**:来自 `query_session` 返回的 `messages` 中 assistant 消息的 content 或结果里的视频/图片 URL,即「返回的结果」。 - **项目地址**:使用 `create_session` 返回的 `projectUrl`,或自行拼接 `https://www.liblib.tv/canvas?projectId=` + `projectUuid`。查询进展时若传入 `--project-id PROJECT_UUI
  • Network accessline 216
    - **项目地址**:使用 `create_session` 返回的 `projectUrl`,或自行拼接 `https://www.liblib.tv/canvas?projectId=` + `projectUuid`。查询进展时若传入 `--project-id PROJECT_UUID`,`query_session` 会直接返回 `projectUrl`,便于一并展示。
  • Network accessline 257
    - 创建会话时若不传 `message`,仅创建/绑定会话,不会调用 SendMessage - 查询会话时可用 `--after-seq` 做增量拉取,便于轮询新消息(含 assistant 回复与生图/生视频结果) - 项目画布地址固定为:`https://www.liblib.tv/canvas?projectId=` + projectUuid
  • Network accessline 258
    - 查询会话时可用 `--after-seq` 做增量拉取,便于轮询新消息(含 assistant 回复与生图/生视频结果) - 项目画布地址固定为:`https://www.liblib.tv/canvas?projectId=` + projectUuid - 切换项目后,Redis 缓存会更新,下次 create_session 将使用新的 projectUuid
  • Network accessline 259
    - 项目画布地址固定为:`https://www.liblib.tv/canvas?projectId=` + projectUuid
  • Network accessline 260
    - 切换项目后,Redis 缓存会更新,下次 create_session 将使用新的 projectUuid - 上传文件仅支持图片(image/*)和视频(video/*)类型,其他类型会被拒绝,文件大小须在 200MB 以下 - 上传返回的 OSS 地址格式为 `https://libtv-res.liblib.art/claw/{projectUuid}/{uuid}{ext}`
  • Network accessline 261
    - 上传文件仅支持图片(image/*)和视频(video/*)类型,其他类型会被拒绝,文件大小须在 200MB 以下 - 上传返回的 OSS 地址格式为 `https://libtv-res.liblib.art/claw/{projectUuid}/{uuid}{ext}` - 生成过程中只告知用户"正在生成中",不要提前给出 projectUrl;任务完成后再同时给出:**结果链接(图片/视频 URL)** + **项目画布链接(projectUrl)**
  • Network accessline 262
    - 上传返回的 OSS 地址格式为 `https://libtv-res.liblib.art/claw/{projectUuid}/{uuid}{ext}`

skills/libtv-skill/scripts/_common.py

  • Executable scriptline 1
    [Credential-related source omitted]
  • Network accessline 10
    [Credential-related source omitted]
  • Access to secretsline 10
    [Credential-related source omitted]
  • Access to secretsline 11
    [Credential-related source omitted]
  • Network accessline 14
    PROJECT_CANVAS_BASE = "https://www.liblib.tv/canvas?projectId="
  • Network accessline 37
    url = f"{IM_BASE.rstrip('/')}{path}"     data = json.dumps(body).encode("utf-8")     req = urllib.request.Request(
  • Network accessline 38
    data = json.dumps(body).encode("utf-8")     req = urllib.request.Request(         url,
  • Network accessline 39
    req = urllib.request.Request(
  • Network accessline 44
    )     try:         with urllib.request.urlopen(req, timeout=30) as resp:
  • Network accessline 45
    try:         with urllib.request.urlopen(req, timeout=30) as resp:             return json.loads(resp.read().decode("utf-8"))
  • Network accessline 46
    with urllib.request.urlopen(req, timeout=30) as resp:
  • Network accessline 59
    url = f"{IM_BASE.rstrip('/')}{path}"     req = urllib.request.Request(url, method="GET", headers=_headers())
  • Network accessline 60
    req = urllib.request.Request(url, method="GET", headers=_headers())
  • Network accessline 61
    try:         with urllib.request.urlopen(req, timeout=30) as resp:             return json.loads(resp.read().decode("utf-8"))
  • Network accessline 62
    with urllib.request.urlopen(req, timeout=30) as resp:

skills/libtv-skill/scripts/change_project.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/libtv-skill/scripts/create_session.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 17
    环境变量:   LIBTV_ACCESS_KEY  必填,Bearer 鉴权   OPENAPI_IM_BASE 或 IM_BASE_URL  可选,默认 https://im.liblib.tv
  • Network accessline 19
    OPENAPI_IM_BASE 或 IM_BASE_URL  可选,默认 https://im.liblib.tv

skills/libtv-skill/scripts/download_results.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 19
    urls = []     url_pattern = re.compile(r'https://libtv-res\.liblib\.art/[^\s"\'<>]+\.(?:png|jpg|jpeg|webp|mp4|mov|webm)')
  • Network accessline 20
    url_pattern = re.compile(r'https://libtv-res\.liblib\.art/[^\s"\'<>]+\.(?:png|jpg|jpeg|webp|mp4|mov|webm)')
  • Network accessline 60
    req = urllib.request.Request(url, headers={"User-Agent": "LibTV-Skill/1.0"})
  • Network accessline 61
    try:         with urllib.request.urlopen(req, timeout=60) as resp:             with open(filepath, "wb") as f:
  • Network accessline 62
    with urllib.request.urlopen(req, timeout=60) as resp:

skills/libtv-skill/scripts/query_session.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 17
    环境变量:   LIBTV_ACCESS_KEY  必填,Bearer 鉴权   OPENAPI_IM_BASE 或 IM_BASE_URL  可选,默认 https://im.liblib.tv
  • Network accessline 19
    OPENAPI_IM_BASE 或 IM_BASE_URL  可选,默认 https://im.liblib.tv

skills/libtv-skill/scripts/upload_file.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 62
    url = f"{IM_BASE.rstrip('/')}/openapi/upload"     req = urllib.request.Request(
  • Network accessline 63
    req = urllib.request.Request(
  • Network accessline 71
    )     try:         with urllib.request.urlopen(req, timeout=120) as resp:
  • Network accessline 72
    try:         with urllib.request.urlopen(req, timeout=120) as resp:             result = json.loads(resp.read().decode("utf-8"))
  • Network accessline 73
    with urllib.request.urlopen(req, timeout=120) as resp:
  • Network accessline 89
    环境变量:   LIBTV_ACCESS_KEY  必填,Bearer 鉴权   OPENAPI_IM_BASE 或 IM_BASE_URL  可选,默认 https://im.liblib.tv
  • Network accessline 91
    OPENAPI_IM_BASE 或 IM_BASE_URL  可选,默认 https://im.liblib.tv

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Signal confidence: 1 fact

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativeFrontmatter field user-invocable in skills/libtv-skill/SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md skills/libtv-skill/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md skills/libtv-skill/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md skills/libtv-skill/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md skills/libtv-skill/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md skills/libtv-skill/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Explore alternatives and comparisons

Add this badge to your README

It updates every night and links to this page.

libtv-labs/libtv-skills: #760 on hotskills, 1.2k stars

[![libtv-labs/libtv-skills on hotskills](https://hotskills.dev/badge/libtv-labs-libtv-skills.svg)](https://hotskills.dev/skill/libtv-labs-libtv-skills/)