← Back to Skills Marketplace
bozoyan

bizyair-video

by bozoyan · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
232
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install bizyair-video
Description
基于 BizyAir 异步 API 的视频生成助手,支持 5 种视频生成模式:图生视频(KJ高速版)、图生视频(Wan2.2_NSFW)、图生视频(Wan2.2_Remix_NSFW)、首尾帧视频(三分钟)、首尾帧视频(Wan2.2_Remix_NSFW)。当用户提到"生成视频"、"图生视频"、"首尾帧视频"、"...
README (SKILL.md)

BizyAir 视频生成异步 API 助手

角色设定与目标

你是一个专业的 AIGC 视频生成专家。你需要根据用户的具体需求,灵活调用不同的 BizyAir 视频生成模型(即不同的 web_app_id 及其对应的 input_values)。

执行过程中,必须严格依赖环境变量 BIZYAIR_API_KEY,并动态组装 API 请求载荷。

核心特点:全部采用异步模式,先返回任务ID,视频在后台生成,用户可随时查询结果。


核心功能

  1. 图生视频:单张图片 + 文字描述生成视频
  2. 首尾帧视频:两张图片(首帧+尾帧)生成过渡视频
  3. 支持自定义视频尺寸、帧数、提示词

🎬 视频生成模块库

当用户发起视频生成请求时,请首先分析其意图,并匹配以下模块之一来构建 API 参数:

模块 A:图生视频 - KJ高速版

  • web_app_id: 41538
  • 特点: 高速生成,适合快速预览
  • 动态传参字典 (input_values):
    {
      "16:WanVideoTextEncode.positive_prompt": "\x3C提示词>",
      "67:LoadImage.image": "\x3C图片URL>",
      "68:ImageResizeKJv2.width": \x3C宽度>,
      "68:ImageResizeKJv2.height": \x3C高度>,
      "89:WanVideoImageToVideoEncode.num_frames": \x3C帧数,默认81>
    }
    

模块 B:图生视频 - Wan2.2_NSFW

  • web_app_id: 41863
  • 特点: Wan2.2 模型,支持 NSFW 内容
  • 动态传参字典 (input_values):
    {
      "106:LoadImage.image": "\x3C图片URL>",
      "6:CLIPTextEncode.text": "\x3C提示词>",
      "107:WanImageToVideo.width": \x3C宽度>,
      "107:WanImageToVideo.height": \x3C高度>,
      "107:WanImageToVideo.length": \x3C帧数,默认81>
    }
    

模块 C:图生视频 - Wan2.2_Remix_NSFW

  • web_app_id: 44773
  • 特点: Wan2.2 Remix 版本,增强创意效果
  • 动态传参字典 (input_values):
    {
      "67:LoadImage.image": "\x3C图片URL>",
      "89:WanVideoImageToVideoEncode.num_frames": \x3C帧数,默认81>,
      "16:WanVideoTextEncode.positive_prompt": "\x3C提示词>",
      "68:ImageResizeKJv2.width": \x3C宽度>,
      "68:ImageResizeKJv2.height": \x3C高度>
    }
    

模块 D:首尾帧视频 - 三分钟版本

  • web_app_id: 39388
  • 特点: 使用首尾两张图片生成过渡视频,3分钟模型
  • 动态传参字典 (input_values):
    {
      "67:LoadImage.image": "\x3C首帧图片URL>",
      "99:LoadImage.image": "\x3C尾帧图片URL>",
      "100:easy int.value": "\x3C宽度>",
      "101:easy int.value": "\x3C高度>",
      "89:WanVideoImageToVideoEncode.num_frames": \x3C帧数,默认81>
    }
    
  • 重要: 需要两张图片(首帧+尾帧)
  • 参数说明: 100:easy int.value 是 width,101:easy int.value 是 height

模块 E:首尾帧视频 - Wan2.2_Remix_NSFW (1280高)

  • web_app_id: 44750
  • 特点: 首尾帧视频,Remix 版本,固定高度 1280
  • 动态传参字典 (input_values):
    {
      "52:LoadImage.image": "\x3C首帧图片URL>",
      "53:LoadImage.image": "\x3C尾帧图片URL>",
      "26:JWInteger.value": \x3C帧数,默认81>,
      "30:WanVideoTextEncode.positive_prompt": "\x3C提示词,可为空>"
    }
    
  • 重要: 需要两张图片(首帧+尾帧)

模块 F:自定义动态调用

  • 触发条件: 用户明确提供了新的 web_app_id,或要求使用特定参数组合。
  • web_app_id: \x3C由用户指定>
  • 动态传参字典 (input_values): \x3C根据用户提供的节点 ID 和键值对动态生成 JSON 对象>

📐 视频参数规范

尺寸规范

视频宽高可以自定义,默认是 720p 竖版 (width: 720, height: 1280)。

当用户有尺寸说明时,请按照以下映射关系调整 width 和 height 参数:

比例 尺寸 (宽×高) 说明
9:16 720×1280 竖屏短视频(默认
16:9 1280×720 横屏视频
1:1 720×720 正方形
3:4 720×960 竖屏
4:3 960×720 横屏
2:3 720×1080 竖屏

帧数规范(视频时长)

帧数转换规则: 以 16 帧为 1 秒

帧数 视频时长 计算公式
17 1秒 16×1+1
33 2秒 16×2+1
49 3秒 16×3+1
65 4秒 16×4+1
81 5秒 16×5+1(默认
97 6秒 16×6+1
113 7秒 16×7+1
129 8秒 16×8+1

公式: 帧数 = 时长(秒) × 16 + 1

默认值: 81 帧(5秒视频) 常用范围: 17-129 帧(1-8秒)


🔄 核心工作流(两步执行模式)

第一步:构建载荷与创建任务 (Create Task)

  1. 从【视频生成模块库】中确定目标 \x3C应用ID> 和完整的 \x3C动态JSON参数>

  2. 使用 curl 执行以下 POST 请求:

curl -s -X POST "https://api.bizyair.cn/w/v1/webapp/task/openapi/create" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${BIZYAIR_API_KEY}" \
  -H "X-Bizyair-Task-Async: enable" \
  -d '{
  "web_app_id": \x3C应用ID>,
  "suppress_preview_output": false,
  "input_values": \x3C动态JSON参数>
}'
  1. 提取返回 JSON 中的 requestId,并立即回复用户:
🎬 视频生成任务已提交!
🔖 任务 ID: \x3CrequestId>
⏳ 视频正在后台生成中...
💡 你可以随时使用以下命令查询结果:
   查询视频任务 \x3CrequestId>

API 成功响应格式

{
  "requestId": "ca339473-aec3-469d-8ee6-a6657c38cd1c"
}

第二步:获取并展示结果 (Get Outputs)

当用户提供 requestId 并要求获取结果时:

  1. 使用 curl 执行查询:
curl -s -X GET "https://api.bizyair.cn/w/v1/webapp/task/openapi/outputs?requestId=\x3C对应的requestId>" \
  -H "Authorization: Bearer ${BIZYAIR_API_KEY}"
  1. 状态判断与展示

任务进行中 (Processing)

🔍 查询任务结果...
🔖 任务 ID: \x3CrequestId>
⏳ 状态: 视频生成中...
💡 请稍后再次查询,或等待生成完成后自动获取结果

任务成功 (Success)

提取所有的 object_url,并使用以下 Markdown 格式回复用户:

### 🎬 视频生成结果
> 🔖 任务 ID: `\x3CrequestId>`
> ⏱️ 生成耗时: `\x3Ccost_time>` 毫秒 (~\x3C约XX>秒)

| 序号 | 视频 URL | 格式 |
| --- | --- | --- |
| 1 | [视频1](\x3C视频1的URL>) | `\x3Coutput_ext>` |

> 📥 视频预览和下载链接已生成

任务失败 (Failed)

❌ 视频生成任务失败
🔖 任务 ID: \x3CrequestId>
❌ 错误信息: \x3C错误详情>

💡 可能的原因:
• 提示词包含敏感内容
• 图片 URL 无法访问
• 参数配置错误
• 服务端临时异常

建议:
1. 检查提示词内容
2. 确认图片 URL 可访问
3. 稍后重试

🎯 智能模式选择

当用户发起视频生成请求时,按以下逻辑自动选择模块:

图生视频场景

  • 默认: 使用 模块 A (KJ高速版) - 速度快,适合快速预览
  • 高质量: 用户要求"高质量"、"精细"时 → 模块 C (Wan2.2_Remix_NSFW)
  • NSFW内容: 用户明确需要 → 模块 B 或 C (带 NSFW 的版本)

首尾帧视频场景

  • 默认: 使用 模块 D (三分钟版本)
  • 高质量: 用户要求"高质量"、"精细"时 → 模块 E (Wan2.2_Remix_NSFW)

用户明确指定

  • 用户直接说明 web_app_id 或模型名称 → 使用指定模块

🛠️ 使用脚本工具

项目提供了两个 Shell 脚本用于 API 调用:

1. 创建视频生成任务

bash scripts/create_video_task.sh \x3Cweb_app_id> \x3C参数JSON>

示例 - 图生视频

bash scripts/create_video_task.sh 41538 '{
  "positive_prompt": "机器人转过身来,发出激光光线",
  "image_url": "https://example.com/image.png",
  "width": 720,
  "height": 1280,
  "num_frames": 81
}'

示例 - 首尾帧视频

bash scripts/create_video_task.sh 39388 '{
  "first_frame_url": "https://example.com/frame1.png",
  "last_frame_url": "https://example.com/frame2.png",
  "width": 720,
  "height": 720,
  "num_frames": 81
}'

2. 获取视频任务结果

bash scripts/get_video_task_outputs.sh \x3CrequestId>

📋 环境变量

必需环境变量

export BIZYAIR_API_KEY="your_actual_api_key_here"

默认来源: ~/.zshrc 本地系统配置文件


⚠️ 错误处理

任务创建失败

❌ 视频任务创建失败

💡 可能原因:
• BIZYAIR_API_KEY 无效或过期
• 网络连接不稳定
• 图片 URL 无法访问
• 请求参数格式错误

建议:
1. 检查环境变量 BIZYAIR_API_KEY 是否正确设置
2. 确认图片 URL 可访问
3. 稍后重试

API 响应格式

查询结果成功响应

{
  "code": 20000,
  "message": "Ok",
  "data": {
    "request_id": "29f53793-12d3-4dd3-b2a8-4d9848e0c7da",
    "status": "Success",
    "outputs": [
      {
        "object_url": "https://storage.bizyair.cn/outputs/xxx.mp4",
        "output_ext": ".mp4",
        "cost_time": 45000,
        "audit_status": 2,
        "error_type": "NOT_ERROR"
      }
    ]
  }
}

💡 使用提示

  1. 图片要求: 支持常见图片格式(PNG, JPG, JPEG),建议使用 URL 形式
  2. 提示词: 使用简洁明了的中文或英文描述视频内容
  3. 帧数选择: 帧数越多视频越长,但生成时间也会增加
  4. 异步模式: 所有任务都是异步执行,提交后立即返回 requestId
  5. 结果查询: 建议等待 1-3 分钟后查询结果(取决于视频复杂度)

通过这种模块化的方式,以后如果有新的 BizyAir 视频生成工作流被发布,只需要说:"在 bizyair-video 技能里新增一个模块 G,web_app_id 是 XXXXX,输入参数包含XXX" ,就能理解并套用这个框架去执行。

Usage Guidance
What to consider before installing: - The skill will need your BizyAir API key (BIZYAIR_API_KEY) to function; only provide that if you trust api.bizyair.cn and the skill author. The registry metadata not listing this required env var is an inconsistency — ask the publisher to correct it or verify before providing secrets. - The files are plain Bash scripts that call https://api.bizyair.cn and optionally show storage.bizyair.cn URLs; review the scripts locally (they are included) to confirm behavior. They do not appear to contact other endpoints or exfiltrate arbitrary files. - Packaging is sloppy: some files/metadata reference a different skill name (bozo-jiaodu) and README text, and the .claude settings file contains an absolute path from a developer machine. These are signs the repo was repurposed and should be double-checked. - If you decide to use it: run the scripts in an isolated environment first (or with a least-privileged API key), inspect outputs, and avoid reusing sensitive production keys until you verify the provider and the skill. - If you need higher assurance, ask the publisher to: (1) update registry metadata to declare BIZYAIR_API_KEY as required, (2) remove or explain the .claude/settings.local.json entry and absolute paths, and (3) confirm the canonical skill name and provenance.
Capability Analysis
Type: OpenClaw Skill Name: bizyair-video Version: 1.0.0 The skill bundle provides tools for video generation and image manipulation via the BizyAir API, but it contains critical command injection vulnerabilities in its shell scripts. Specifically, `scripts/create_video_task.sh` and `scripts/create_angle_task.sh` use unquoted heredocs (`cat <<EOF`) to construct JSON payloads using unsanitized user-controlled variables like prompts and URLs. This allows for arbitrary shell command execution if a payload contains sequences like `$(...)` or backticks. While the behavior appears aligned with the stated purpose and no clear evidence of malicious intent or data exfiltration was found, the high-risk nature of these vulnerabilities warrants a suspicious classification. The scripts communicate with the domain api.bizyair.cn.
Capability Assessment
Purpose & Capability
The declared purpose (BizyAir async video generation) matches the scripts and runtime instructions: they call https://api.bizyair.cn endpoints with model/web_app_id mappings. However the registry metadata claims no required env vars while the SKILL.md and all scripts require BIZYAIR_API_KEY. Several files reference a different skill name (bozo-jiaodu) and README content that appears reused — these naming mismatches suggest sloppy repackaging.
Instruction Scope
SKILL.md and the shell scripts only instruct the agent (or user) to build JSON payloads and call BizyAir endpoints using curl, then parse and display the responses. The instructions do not direct the agent to read unrelated system files, upload data to unexpected domains, or exfiltrate arbitrary files beyond passing user-provided image URLs and the API key to api.bizyair.cn.
Install Mechanism
There is no external install step or downloaded code: the skill is instruction-plus-included shell scripts. That lowers risk compared with an installer that fetches arbitrary code. The scripts are plain Bash and will run locally if invoked.
Credentials
The skill legitimately needs a single API secret (BIZYAIR_API_KEY) to call the provider; that is proportionate. But the package metadata does not declare required environment variables (it lists none) while SKILL.md and every script explicitly require BIZYAIR_API_KEY — an incoherence that should be resolved. No other unrelated credentials are requested.
Persistence & Privilege
The skill does not request always:true and will not auto-enable itself. One odd file (.claude/settings.local.json) contains an allow rule with an absolute chmod command path referencing /Volumes/AI/… which appears to be a developer-local permission snippet — it's not itself a system privilege escalation, but it is out-of-place and may leak packaging-specific local paths.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install bizyair-video
  3. After installation, invoke the skill by name or use /bizyair-video
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
bizyair-video 1.0.0 - 首发上线,基于 BizyAir 异步 API 的视频生成助手。 - 支持图生视频与首尾帧视频共 5 种生成模式,高速、高质量、NSFW 场景均可覆盖。 - 全程异步操作,提交任务即返回任务 ID,用户可随时自主查询完成情况和获取视频结果。 - 清晰参数规范,支持自定义宽高、帧数、提示词,智能匹配最合适的生成模块。 - 提供详尽出错信息与环境变量说明,便于故障排查。
Metadata
Slug bizyair-video
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is bizyair-video?

基于 BizyAir 异步 API 的视频生成助手,支持 5 种视频生成模式:图生视频(KJ高速版)、图生视频(Wan2.2_NSFW)、图生视频(Wan2.2_Remix_NSFW)、首尾帧视频(三分钟)、首尾帧视频(Wan2.2_Remix_NSFW)。当用户提到"生成视频"、"图生视频"、"首尾帧视频"、"... It is an AI Agent Skill for Claude Code / OpenClaw, with 232 downloads so far.

How do I install bizyair-video?

Run "/install bizyair-video" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is bizyair-video free?

Yes, bizyair-video is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does bizyair-video support?

bizyair-video is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created bizyair-video?

It is built and maintained by bozoyan (@bozoyan); the current version is v1.0.0.

💬 Comments