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-cli

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.19.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.19-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vcursor_cli-1.0.19.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.19.tar.gz
Algorithm Hash digest
SHA256 714add15d1ac2236a6063f7b38612d801489ab1c1b888102679c73a820ca8226
MD5 09a66c329e7a4184ae6d42c06e57e336
BLAKE2b-256 f6cf65e751b95931b2d0bffee29577f673d9d4d7746d3576ece29605ccedd7cd

See more details on using hashes here.

Provenance

The following attestation bundles were made for vcursor_cli-1.0.19.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.19-py3-none-any.whl.

File metadata

  • Download URL: vcursor_cli-1.0.19-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.19-py3-none-any.whl
Algorithm Hash digest
SHA256 0efc49010538b569681a438e237a99a5281c00d8dba0be1c7f9020c2ade100ea
MD5 3d94106b629f29a6e2ec23870b4440e8
BLAKE2b-256 2b37ce5b7711a3b10d0e3571123e0199a5cec578d8cf750272e95c76057e9f60

See more details on using hashes here.

Provenance

The following attestation bundles were made for vcursor_cli-1.0.19-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