MCPInstall

byted-airesearch-videoeval

Create and check long-running video material evaluation tasks. Use this skill when the user wants to submit videos for evaluation, check an existing video evaluation task list, or fetch the result of a previously created video evaluation task. This skill is not a general-purpose video upload skill because upload is allowed only as an internal step of task creation. Authentication uses an API key passed as an Authorization bearer token.

Installs
50
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/bytedance/agentkit-samples --skill byted-airesearch-videoeval
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads byted-airesearch-videoeval automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Byted Airesearch Videoeval

Use this skill to submit and query long-running material evaluation tasks.

When to use

Use this skill when the user wants to:

  • evaluate a video material or creative asset
  • submit a material evaluation task and get back a task identifier
  • check the status of an existing evaluation task later
  • fetch the final detail/result of a previously created evaluation task

Do not use this skill for generic video upload requests.

Current workflow

  1. Validate the full input batch before any upload starts.
  2. Upload the local video files and capture the returned attachment_id values.
  3. Create a task with the uploaded attachment IDs.
  4. Return success immediately after the task is created.
  5. Ask the user to query task list or task detail later if they want progress or results.

This workflow is intentionally non-blocking. Do not poll automatically after task creation.

Mandatory behavior

  • Do not expose the upload API as a standalone user-facing capability.
  • Do not trigger this skill for generic requests such as “upload this video”, “store this file”, or “send this video”.
  • Only call the upload API when the user explicitly intends to create a new material evaluation task.
  • For new task creation, prefer scripts/submit_evaluation_task.py so validation, upload, and task creation stay in one controlled flow.
  • Treat scripts/upload_video.py as an internal helper used by the orchestration flow, not as the primary user entrypoint. The script itself rejects direct use unless it is called with the internal orchestration marker.

For multi-file submissions, use the orchestration entrypoint so the whole batch is validated before the first upload starts.

Submission limits

  • A single task can include at most 10 videos.
  • Non-enabled users have a rolling free quota of at most 10 submitted videos within the last 24 hours.
  • The new task's video count is added to the number of videos already submitted in the last 24 hours. If the total exceeds 10, the service rejects the task and asks the user to contact Volcengine sales to enable access.
  • Enabled users are not restricted by this rolling 24-hour free quota.
  • Quota accounting is based on the actual number of videos submitted per task, with no deduplication.
  • Any task created within the last 24 hours counts toward the rolling quota, including running tasks.
  • Login-based access and API key access share the same quota pool.
  • The skill enforces the per-task limit locally before upload starts. The rolling 24-hour quota is enforced by the service, and the skill should surface the service rejection with a clear explanation.

Authentication

The current APIs use API key authentication.

All API requests sent by this skill must include the header:

  • x-product-version: 20
  • Authorization: bearer {API_KEY}

Preferred input methods:

  • --api-key "<api-key>"
  • BYTED_AIRESEARCH_VIDEOEVAL_API_KEY

If no API key is available, ask the user to create or view one at:

  • https://console.volcengine.com/datatester/ai-research/audience/list?tab=apikey

Then ask the user to provide the API key before calling the API.

If the API key is missing, the scripts must fail immediately with a clear error that points the user to the API key page above.

Known API coverage

Upload attachment

  • Endpoint: POST https://console.volcengine.com/datatester/compass/api/v3/survey/attachment
  • Request: multipart/form-data
  • File field: file
  • Upload constraints:
    • each upload request contains exactly one video file
    • each video must be 50MB or smaller
    • file format must be mp4
    • MIME type must be video/mp4
  • Output mapping:
    • preserve the raw attachment payload
    • map the attachment object's id field to attachment_id

The upload_video.py script is an internal helper for the create-task workflow. It is not the primary user-facing entrypoint.

Create task

  • Endpoint: POST https://console.volcengine.com/datatester/compass/api/v3/survey/task
  • Fixed request fields:
    • form_id: 0
    • agent_id: 125
    • audience_id: 3664529
  • Optional request fields currently exposed:
    • prompt
    • language
    • is_typical_user_enabled
    • typical_user_count
    • typical_user_selection_mode
    • is_report_enabled
    • attachment_ids
  • Create constraints:
    • one task submission can include at most 10 videos
    • attachment_ids must contain at most 10 items per request

The create step should send the uploaded attachment_id as a one-element attachment_ids array unless multiple attachment IDs are explicitly provided.

List and detail

Task detail is wired and can query an existing task directly:

  • Endpoint: GET https://console.volcengine.com/datatester/compass/api/v3/survey/task/{id}
  • Current auth: API key bearer token
  • Output mapping:
    • map the task object's id field to task_id
    • map the task object's status field to task_status
    • parse task.detail
    • keep only items where key == video_structured_result and sub_tab != null
    • expose a compact summary block for downstream agent use

Task list is wired and can query existing tasks directly:

  • Endpoint: GET https://console.volcengine.com/datatester/compass/api/v3/survey/task
  • Current auth: API key bearer token
  • Current fixed query params:
    • page=1
    • page_size=100
    • agent_id=125
  • Output mapping:
    • map each task item to task_id, name, status, created_at, updated_at
    • preserve pagination info in data.page

Commands

# Validate a whole batch before upload, then upload all files and create the task
python scripts/submit_evaluation_task.py \
  --file /path/to/video-1.mp4 \
  --file /path/to/video-2.mp4 \
  --api-key "<api-key>"

# Single-video create flow
python scripts/submit_evaluation_task.py \
  --file /path/to/video.mp4 \
  --prompt "Evaluate this material for audience fit and content quality." \
  --api-key "<api-key>"

# Query task list later
python scripts/list_evaluation_tasks.py

# Query task detail later
python scripts/get_evaluation_task_detail.py --task-id 12345

Response handling

All scripts emit JSON to stdout with the same top-level envelope:

  • status
  • message
  • request_id
  • data
  • error

Important normalized fields:

  • submit task: data.task_id, data.task_status, data.submitted_video_count
  • list: data.items
  • detail: data.detail, data.summary

Final answer rules

  • Use the structured JSON returned by the detail endpoint as the internal source of truth.
  • Present the final answer in human-readable natural language.
  • When the task is finished, prefer a concise report-style answer rather than a raw data dump.
  • Do not dump raw JSON to the user.
  • Do not expose internal field names such as video_eval, video_user_report, distribution, field_desc, or similar implementation-oriented keys.
  • Apply the same rule to task list responses: use the list result as internal source data, but present the outcome as a natural-language summary rather than raw fields.
  • For task list answers, it is acceptable to include the task ID, task name, status, created time, and updated time in human-readable prose, because those fields help the user choose a task for follow-up detail queries.
  • When multiple videos are present, summarize them separately.
  • For finished task detail results, prefer a readable report flow such as: task conclusion first, then one short section per video, then overall recommendations if the source data supports them.
  • If the task is not finished yet, do not fabricate a report. Clearly state the current status and ask the user to check again later.
  • Only provide raw structured data if the user explicitly asks for the raw result.

Practical guidance

  • For new submissions, use the orchestration flow rather than exposing upload as a standalone step to the user.
  • Validate the local file before upload. Reject non-MP4 files, files with non-video/mp4 MIME types, or files larger than 50MB with a direct and actionable error message.
  • Validate the task creation input before calling the API. Reject any request that contains more than 10 attachment IDs with a direct and actionable error message.
  • For a multi-video submit flow, validate the full batch size before any upload starts. If the batch contains more than 10 files, fail immediately and do not upload anything.
  • If the service rejects task creation because the rolling 24-hour free quota was exceeded, use this standard Chinese wording for the user-facing message: 免费版用户每24小时最多提交10个评估视频,如需购买请联系火山引擎销售人员
  • After create succeeds, tell the user the task has been submitted successfully and can be checked later.
  • Use task list when the user wants to browse or find historical tasks.
  • Use task detail when the user already knows the task ID and wants the final result.

FAQ

What does the byted-airesearch-videoeval skill do?

Create and check long-running video material evaluation tasks. Use this skill when the user wants to submit videos for evaluation, check an existing video evaluation task list, or fetch the result of a previously created video evaluation task. This skill is not a general-purpose video upload skill because upload is allowed only as an internal step of task creation. Authentication uses an API key passed as an Authorization bearer token.

How do I install byted-airesearch-videoeval?

Run npx skills add https://github.com/bytedance/agentkit-samples --skill byted-airesearch-videoeval in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/byted-airesearch-videoeval/ (personal) or .claude/skills/byted-airesearch-videoeval/ (project).

Which AI agents can use byted-airesearch-videoeval?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is byted-airesearch-videoeval safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains byted-airesearch-videoeval?

It is published by bytedance in bytedance/agentkit-samples. It has 50 recorded installs.

More from bytedance/agentkit-samples

View all →

byted-web-search

bytedance/agentkit-samples

火山引擎联网搜索 API,返回网页/图片结果。联网搜索场景优先使用本 skill。触发词包括:查/搜/找、真的吗/靠谱吗/确认/核实、最近/今天/最新/近期、出处/来源/链接、有什么/有哪些/推荐、价格/政策/汇率/行情、对比/区别/哪个好、听说/据说/不太确定、热搜/热门/火、帮我看/了解一下、求证/辟谣、值不值得/该不该。任务依赖在线事实或时效性时优先使用。若回答可能依赖外部事实,优先调用本 skill 再作答。支持 API Key / AK/SK。

byted-seedream-image-generate

bytedance/agentkit-samples

Generate high-quality images from text prompts using Volcano Engine Seedream models. Supports multiple artistic styles and aspect ratios. Use this skill when users want to create images from text descriptions, generate artwork in various styles, create visual content for creative projects, or need AI-powered image generation capabilities.

Media & Creative298 installs

byted-las-video-edit

bytedance/agentkit-samples

智能视频剪辑:用自然语言描述要保留的片段/人物/事件,自动从长视频抽取剪辑(可用参考图做人物/物体匹配)。当用户要按描述找片段、提取高光或做智能剪辑时触发。

Media & Creative209 installs

byted-text-to-speech

bytedance/agentkit-samples

将文本合成为语音(TTS)。使用火山引擎豆包语音合成 API,支持流式合成、多种音色、语速/音调/音量调节、Markdown 过滤和 LaTeX 公式播报。当用户需要把文字转成语音、生成朗读音频、配音、旁白、播报,或提到「文字转语音」「TTS」「语音合成」「朗读」「配音」时使用本技能。

Media & Creative184 installs

byted-seedance-video-generate

bytedance/agentkit-samples

Generate videos using Seedance models. Invoke when user wants to create videos from text prompts, images, or reference materials.

Media & Creative181 installs

byted-las-pdf-parse-doubao

bytedance/agentkit-samples

PDF 解析(Doubao):将 PDF/扫描件转成结构化 Markdown/文本,支持表格与多栏版式。当用户要从 PDF 提取文字/表格或做 OCR 时触发。

Docs & Writing164 installs

Popular media & creative skills

View category →

hyperframes

heygen-com/hyperframes

Read first to make, edit, animate or render any video with HyperFrames (HTML rendered to video), including launch films, explainers, music videos, charts, maps, vertical clips, title cards, captions and overlays. Holds the render contract, the work loop and what each kind of video needs.

Media & Creative1.2M installs

media-use

heygen-com/hyperframes

Get or make any media for a HyperFrames video - music, sound effects, images, icons, logos, voiceover, avatar and generated video, transcripts, cutouts, colour grades and looks - with HeyGen or free local tools, and mix placed audio. Also for footage that looks dark, flat or dull, or should be stylized or hidden.

Media & Creative1.1M installs

hyperframes-registry

heygen-com/hyperframes

About 450 ready-made HyperFrames blocks and components installed as editable source - transitions, overlays, titles, kinetic type, captions, charts, map overlays, 3D, camera moves. Use it before hand-building any named visual (CRT scanlines, glitch, film grain, a chart); also for hyperframes add and catalog.

Media & Creative1M installs

hyperframes-creative

heygen-com/hyperframes

Non-animation creative direction for HyperFrames videos. Use for design spec (frame.md / design.md) handling, palettes, typography, narration, beat planning, audio-reactive visuals, composition patterns, and brand / style decisions. For atomic motion patterns and scene blueprints, use hyperframes-animation.

Media & Creative916.5K installs

ai-video-generation

101-skills/superpowers

Generate AI videos with Google Veo, Seedance 2.0, HappyHorse, Wan, Grok and 40+ models via inference.sh CLI. Models: Veo 3.1, Veo 3, Seedance 2.0, HappyHorse 1.0, Wan 2.5, Grok Imagine Video, OmniHuman, Fabric, HunyuanVideo. Capabilities: text-to-video, image-to-video, reference-to-video, video editing, lipsync, avatar animation, video upscaling, foley sound. Use for: social media videos, marketing content, explainer videos, product demos, AI avatars. Triggers: video generation, ai video, text to video, image to video, veo, animate image, video from image, ai animation, video generator, generate video, t2v, i2v, ai video maker, create video with ai, runway alternative, pika alternative, sora alternative, kling alternative, seedance, happyhorse

Media & Creative881.5K installs

ai-image-generation

101-skills/superpowers

Generate AI images with GPT-Image-2, FLUX, Gemini, Grok, Seedream, Reve and 50+ models via inference.sh CLI. Models: GPT-Image-2, FLUX Dev LoRA, FLUX.2 Klein LoRA, Gemini 3 Pro Image, Grok Imagine, Seedream 4.5, Reve, ImagineArt. Capabilities: text-to-image, image-to-image, inpainting, LoRA, image editing, upscaling, text rendering. Use for: AI art, product mockups, concept art, social media graphics, marketing visuals, illustrations. Triggers: flux, image generation, ai image, text to image, stable diffusion, generate image, ai art, midjourney alternative, dall-e alternative, text2img, t2i, image generator, ai picture, create image with ai, generative ai, ai illustration, grok image, gemini image, gpt image, openai image, chatgpt image

Media & Creative880.3K installs