← Home

Guide

The LibTV Skill: Video Creation Your Agent Can Drive

LibTV is LiblibAI's video creation platform, and it is one of the few built for agents as deliberately as for people. Install the skill, set one access key, and your agent can go from a sentence to a finished cut — script, storyboard and all. The unusual part is how little work your agent is supposed to do.

What LibTV Actually Is

LibTV (liblib.tv) is a canvas-based video creation platform from LiblibAI. A human opens the canvas and works visually. An agent opens a session over the OpenAPI and works in plain language. Both drive the same project, which means you can hand a job to your agent and then open the canvas yourself to see what it made.

Behind that session sits LiblibAI's own orchestration agent, which picks models and writes the prompts. It routes across Seedance 2.0, Kling 3.0/O3, Wan 2.6, NanoBanana, Midjourney and Seedream 5.0 — so you are not choosing a model the way you would in your instance's Video slot. You describe the outcome; LibTV decides how to get there.

What You Can Ask For

  • Generate — text-to-image, text-to-video, image-to-video, and extending an existing clip.
  • Edit — replace an element, remove something, change a camera move, or transfer a style onto footage you already have.
  • Complex pieces — a full short drama from one sentence (script, then storyboard, then finished cut), a TVC or promo cloned from a reference video, a music MV, or a product showcase.

Install It

The skill is libtv-labs/libtv-skills on GitHub (MIT licensed) and follows the OpenClaw skill spec, so any agent runtime that reads that spec can install it. On OpenClaw Launch it is in the skills marketplace — search for LibTV and install it onto your instance in one click, bundled scripts included.

It needs Python 3 and nothing else. Every script uses only the standard library, so there is no dependency install to fail on you.

Get Your Access Key

LibTV authenticates with a single bearer token. Sign in at liblib.tv and open your account area from the avatar in the top right — the access key sits in your account and developer settings. Copy it, then expose it to your agent as an environment variable:

export LIBTV_ACCESS_KEY="your-access-key"

That is the only required variable. OPENAPI_IM_BASE and IM_BASE_URL are optional overrides and both default to https://im.liblib.tv — leave them alone unless LibTV tells you otherwise. The key is stored on your own instance; it is sent to LibTV as a bearer token on each request, which is simply how their API authenticates you.

The Five Scripts

ScriptWhat it does
create_session.pyOpens a session and sends your brief. Returns a session ID, a project UUID and the canvas link.
query_session.pyPolls that session for progress and results. Supports incremental pulls with --after-seq.
upload_file.pyUploads a local reference image or video and returns a hosted URL to quote in your brief.
download_results.pyPulls every finished image and video out of a session and saves them locally, in parallel.
change_project.pyPoints your access key at a new project, so later sessions land somewhere fresh.

The Shape of a Job

Generating something is a four-beat loop, and your agent runs it without being told:

  • Send the brief with create_session.py and keep the session ID.
  • Poll query_session.py every 8 seconds until an assistant message comes back carrying result URLs.
  • Download the results automatically — the user should not have to ask.
  • Show the finished files together with the project canvas link.

Editing something you already have adds one step at the front: upload the file, get a hosted URL back, and quote that URL inside the instruction — "replace the paper boats with white paper hearts, reference video: [url]". Uploads accept images and video only, up to 200MB.

Long jobs are normal. A short drama takes real time, and the skill's own rule is to stop polling after about three minutes and tell you to check the canvas link later rather than spin forever.

The Rule That Makes It Work: Your Agent Is a Courier

This is the part worth reading twice, because it is the opposite of how most people use an agent. The skill instructs your agent to be a courier, not a creative director. Its only three jobs are upload, relay, collect.

So it must not rewrite, polish or translate your wording. It must not break "give me a nine-panel storyboard" into nine separate requests. It must not bolt on prompt-engineering garnish like "ultra realistic, cinematic lighting, 8K". If you say "work out where the story goes next", that exact sentence is what gets sent.

The reason is straightforward: LibTV's backend already knows its own models, their parameters and how to prompt them far better than a general-purpose agent does. An agent that helpfully embellishes on the way through is talking over the specialist — and the output gets worse, not better.

Where the Results Land

Finished files download to your instance, and every session also has a canvas at liblib.tv/canvas?projectId=... where you can carry on by hand. A good agent holds the canvas link back while work is in progress and hands you both — the files and the link — only once the job is done.

Worth Knowing Before You Start

  • You bring your own LibTV account and key; generation is billed by LiblibAI, not by us.
  • It installs on both OpenClaw and Hermes instances — the bundled scripts go in either way, and both runtimes have Python 3.
  • The skill triggers on ordinary phrasing — "draw me a cat", "make a poster", "turn this song into an MV" — so you rarely need to name it.
  • Its instructions are written in Chinese, which is no obstacle to a model but is worth knowing if you go reading the source.

Want an agent that can do this on Telegram, Discord, WhatsApp or the web? Deploy one in about a minute and install LibTV from the skills marketplace.