원클릭으로
libtv-skill
agent-im 会话技能 - 通过 OpenAPI 创建会话、发送生图/生视频等消息、上传图片/视频文件,并查询会话进展。当用户需要生图、生视频、上传文件或查询当前会话消息时激活此技能。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
agent-im 会话技能 - 通过 OpenAPI 创建会话、发送生图/生视频等消息、上传图片/视频文件,并查询会话进展。当用户需要生图、生视频、上传文件或查询当前会话消息时激活此技能。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
分析 Skill 使用日志,输出频率排行、满意度趋势、低频 Skill 清单。每周运行一次。 触发词:"分析 Skill 使用情况"、"Skill 周报"、"哪些 Skill 用得多"、"看看 Skill 数据"。 依赖 skill-logger 写入的 skill_usage_log.jsonl 日志文件。
记录一次 Skill 使用情况到日志文件。每次用完某个 Skill 后调用,追加一条使用记录。 触发词:"记录这次使用"、"记录用了 xxx"、"log skill"、"记录一下"(在使用完某个 Skill 之后)。 用于追踪 Skill 使用频率和满意度,为 skill-analyzer 提供数据。
飞书知识库文档管理工具。支持查看知识库目录结构、创建和保存文档、读取多维表格内容。当用户说"保存到飞书"、"写入飞书知识库"、"发布到飞书"、"查看飞书目录"、"读取飞书表格"时触发。适用于将 Obsidian 文档同步到飞书知识库,或读取飞书多维表格数据。
Analyzes article structure, identifies positions requiring visual aids, generates illustrations with Type × Style two-dimension approach. Use when user asks to "illustrate article", "add images", "generate images for article", or "为文章配图".
Knowledge comic creator supporting multiple art styles and tones. Creates original educational comics with detailed panel layouts and sequential image generation. Use when user asks to create "知识漫画", "教育漫画", "biography comic", "tutorial comic", or "Logicomix-style comic".
Compresses images to WebP (default) or PNG with automatic tool selection. Use when user asks to "compress image", "optimize image", "convert to webp", or reduce image file size.
| name | libtv-skill |
| description | agent-im 会话技能 - 通过 OpenAPI 创建会话、发送生图/生视频等消息、上传图片/视频文件,并查询会话进展。当用户需要生图、生视频、上传文件或查询当前会话消息时激活此技能。 |
| user-invocable | true |
| metadata | {"openclaw":{"emoji":"💬","requires":{"bins":["python3"],"env":["LIBTV_ACCESS_KEY"]},"primaryEnv":"LIBTV_ACCESS_KEY"}} |
通过 agent-im 的 OpenAPI 创建会话、发送消息(生图、生视频等)、上传图片/视频文件,并查询会话消息进展。
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
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"
}
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)。
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}