Search and Install a Skill via CLI
Agents can call vtrix skills directly to search SkillHub and install the skills they need — no manual doc lookup required.
Install this skill https://vtrix.ai/skills/skill.md and follow the instructions to search Skills in vtrix skillhub Search for the Skill you need
# Keyword search
vtrix skills find "video generation"Search results for "video generation" (3 found)
seedance_2_0 Seedance V2.0 Video Generation ★ 4.8 ↓ 12.4k
seedance_2_0_fast Seedance V2.0 Fast ★ 4.6 ↓ 8.1k
kirin-video-suite Kirin Video Suite ★ 4.5 ↓ 3.2k# Browse by category, sorted by popularity
vtrix skills list --category video --sort starsGlobal install (auto-detects target agent)
vtrix skills add seedance_2_0 -gDetecting Agent environment...
✓ Claude Code detected at ~/.claude/skills/
Installing seedance_2_0 v2.1.0...
✓ Downloaded
✓ Installed to ~/.claude/skills/seedance_2_0/
Skill ready. Restart Claude Code to activate.The agent can now be invoked via natural language
After restarting the agent, the Skill loads automatically. The agent reads the Skill file to understand the parameter spec and can invoke the CLI directly via natural language instructions to submit generation tasks.
Generate Assets with a Multimodal Skill
Using Seedance 2.0 (spark_dance_v2_0) as an example — a complete walkthrough from install to generation in an agent environment.
Install the Skill
vtrix skills add seedance_2_0 -g --yes✓ Installed seedance_2_0 v2.1.0 → ~/.claude/skills/seedance_2_0/Agent invocation example
Once installed, an agent (e.g. Claude Code) can trigger the Skill directly via natural language. The Skill internally calls vtrix run to complete the generation:
User: Generate a 10-second cinematic timelapse of a city at night, 1080p, landscape
Agent (internal execution):
vtrix run spark_dance_v2_0 \
--param prompt="cinematic timelapse of city lights at night, cars streaming, urban skyline" \
--param duration=10 \
--param resolution=1080p \
--param ratio=16:9 \
--output urlSubmitting task...
✓ Task created: task_xyz001
Waiting for result...
██████████████████████████ 100% Done
✓ https://cdn.vtrix.ai/outputs/task_xyz001/output.mp4Image to video
vtrix run spark_dance_v2_0 \
--param content='[{"type":"image_url","image_url":"https://example.com/city.jpg"},{"type":"text","text":"timelapse, lights flickering, crowd moving"}]' \
--param duration=8 \
--param resolution=1080p \
--output url✓ https://cdn.vtrix.ai/outputs/task_xyz002/output.mp4Consuming results in scripts / agent toolchains
# Capture the URL directly
VIDEO_URL=$(vtrix run spark_dance_v2_0 \
--param prompt="ocean waves at sunset" \
--param duration=5 \
--output url)
# Or get full JSON and extract with jq
VIDEO_URL=$(vtrix run spark_dance_v2_0 \
--param prompt="ocean waves at sunset" \
--output json | jq -r '.output[0].content[0].url')
echo "Generated: $VIDEO_URL"vtrix run polls automatically until completion. If you need to control the polling cadence yourself (e.g. submitting multiple tasks in parallel), use --output json to get the task_id, then query manually with vtrix task status.
Response Structure
{
"id": "task_xyz001",
"status": "completed",
"model": "spark_dance_v2_0",
"output": [{
"content": [{
"type": "video",
"url": "https://cdn.vtrix.ai/outputs/task_xyz001/output.mp4",
"duration": "10.0"
}]
}],
"usage": { "cost": "0.43334", "quantity": 10 },
"metadata": { "completed_at": 94.51 }
}