Skip to main content

VCursor SDK & CLI - Generate videos from text, images, and URLs using AI

Project description

VCursor Python SDK & CLI

Generate videos from text, images, and URLs using AI.

Installation

pip install vcursor

Quick Start

As a library (embedded in code)

from vcursor import VCursor

client = VCursor(api_key="vk-...")

# Submit a video generation task
resp = client.submit("a cat playing piano in a jazz club")

# Wait for completion with progress callback
result = client.wait_for_completion(
    resp.task_id,
    on_progress=lambda p: print(f"{p.data.progress}%")
)

print(result.data.products.url)

Async usage

import asyncio
from vcursor import VCursorAsync

async def main():
    async with VCursorAsync(api_key="vk-...") as client:
        resp = await client.submit("sunset timelapse over mountains")
        result = await client.wait_for_completion(resp.task_id)
        print(result.data.products.url)

asyncio.run(main())

Concurrency limiting

The server enforces per-user rate limits based on subscription tier:

Tier Standard Requests Agent Requests Window
Free 3 1 Lifetime
Pro 30/hr 5/hr Rolling 1h
Plus 120/hr 15/hr Rolling 1h
# Check current rate limit status
status = client.check_concurrency("standard")
print(f"Standard: {status.summary['standard'].used}/{status.summary['standard'].limit}")
print(f"Agent:    {status.summary['agent'].used}/{status.summary['agent'].limit}")

# Client-side limit (capped at server limit)
client = VCursor(api_key="vk-...", max_concurrency=10)

As a CLI

# Authenticate
vcursor login

# Generate a video
vcursor generate "a cat playing piano"

# Agent mode
vcursor generate --agent "create a 30s commercial"

# Check concurrency status
vcursor concurrency

# With concurrency limit
vcursor generate --max-concurrency 2 "sunset timelapse"

API Reference

VCursor / VCursorAsync

Method Description
submit(prompt, **kw) Submit a standard video generation task
get_progress(task_id) Get task progress
wait_for_completion() Poll until task completes
cancel_task(task_id) Cancel a running task
submit_agent(message) Submit an agent mode task
get_agent_progress() Get agent task progress
wait_for_agent_completion() Poll until agent task completes
check_concurrency() Check concurrency limit status

Configuration

Config is stored in ~/.vcursor/config.json (shared with the Node.js CLI).

Environment variables:

  • VCURSOR_API_KEY - API key
  • VCURSOR_SERVER - Server URL

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vcursor_cli-1.0.13.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vcursor_cli-1.0.13-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file vcursor_cli-1.0.13.tar.gz.

File metadata

  • Download URL: vcursor_cli-1.0.13.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for vcursor_cli-1.0.13.tar.gz
Algorithm Hash digest
SHA256 54e0bd10ce4286e6b05e84382e2ef1e8547d98ae450637bc29267d95aaf4be74
MD5 b3523c059b93605e51236b0e9d4b831c
BLAKE2b-256 be3e5c2ca1e9a83ccea990b84b3738b6af8c3b80d971a9c2265624fc12ca6bb7

See more details on using hashes here.

Provenance

The following attestation bundles were made for vcursor_cli-1.0.13.tar.gz:

Publisher: python-publish.yml on JThh/vcursor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vcursor_cli-1.0.13-py3-none-any.whl.

File metadata

  • Download URL: vcursor_cli-1.0.13-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for vcursor_cli-1.0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 48f99b8666af1624d90f0532714a45742d78995352a9f2b77dbf0d365a76f59d
MD5 668feb99ae7682dcebdb014fdc973987
BLAKE2b-256 aab3241cf4a6a168dc29fcd16ea4883f825cdc800355125d92691c9c937a067a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vcursor_cli-1.0.13-py3-none-any.whl:

Publisher: python-publish.yml on JThh/vcursor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page