Skip to main content

List All Skills

Retrieve all available skills:
from vlmrun.client import VLMRun

client = VLMRun(api_key="<VLMRUN_API_KEY>")

skills = client.skills.list()
for skill in skills:
    print(f"{skill.name} (v{skill.skill_version})")
import { VlmRun } from "vlmrun";

const client = new VlmRun({
    apiKey: "<VLMRUN_API_KEY>",
});

const skills = await client.skills.list();
skills.forEach(skill => console.log(`${skill.name} (v${skill.skill_version})`));
# List all skills (latest 25)
vlmrun skills list

# List with grouping (latest version per name)
vlmrun skills list --grouped

# List with custom limit and sort
vlmrun skills list --limit 50 --order-by name --asc

Lookup by Name

Find a skill by its human-readable name:
# Get latest version
skill = client.skills.get(name="invoice-extraction")

# Get a specific version
skill = client.skills.get(name="invoice-extraction", skill_version="20260219-abc123")
// Get latest version
const skill = await client.skills.get({ name: "invoice-extraction" });

// Get a specific version
const skill = await client.skills.get({
    name: "invoice-extraction",
    skillVersion: "20260219-abc123",
});
# Get latest version by name
vlmrun skills get invoice-extraction

# Get a specific version
vlmrun skills get invoice-extraction --skill-version 20260219-abc123

Lookup by ID

Find a skill by its unique identifier:
skill = client.skills.get(id="<skill-id>")
const skill = await client.skills.get({ id: "<skill-id>" });
vlmrun skills get <skill-id>

Download a Skill

Get a presigned URL to download the skill package:
download = client.skills.download(skill_id="<skill-id>")
print(f"Download URL: {download.url}")
# Download and extract to default location (~/.vlmrun/skills/)
vlmrun skills download invoice-extraction

# Download a specific version to a custom directory
vlmrun skills download invoice-extraction --skill-version 20260219-abc123 --output ./skills/

Skills API Reference

View the complete API reference for skill endpoints