Skip to main content

A Python CLI for Vuer, a real-time 3D visualization library

Project description

Vuer Hub Environment Manager

Vuer HUB and the vuer command line tool enable you to manage, version-control, and distribute physical simulation environments the same way you manage software packages.

Overview

The CLI maintains a local environment list in vuer.json.

Commands:

  • sync - pull all included environments
  • add - add an environment to the vuer.json
  • remove - remove an environment
  • upgrade - upgrade environments

Environment Commands:

  • envs-create – create a workspace for an environment
  • envs-publish - publish an environment to the workspace
  • envs-pull – download an environment by environmentId
  • envs-push – upload a packaged environment

Installation

pip install vuer-cli

Environment Variables

Variable Required Description
VUER_AUTH_TOKEN JWT token used for all authenticated requests
VUER_HUB Base URL of the Vuer Hub API backend (defaults to https://hub.vuer.ai/api)
export VUER_AUTH_TOKEN="your-jwt-token"
export VUER_HUB="https://hub.vuer.ai/api"

Usage Overview

# Sync all environments
vuer sync

# Add an environment
vuer add --command.env <environmentId>

# Pull an environment
vuer envs-pull --command.id <environmentId>

# Push an environment
vuer envs-push --command.file ./build/my-env.zip --command.name demo-env --command.version 1.2.3

Push Command

Upload a packaged environment:

vuer envs-push \
  --command.file ./build/my-env.zip \
  --command.name demo-env \
  --command.version 1.2.3 \
  --command.description "Demo package" \
  --command.env-type isaac \
  --command.visibility PUBLIC \
  --command.push-timeout 600

Push Flags

Flag Required Description
--command.file PATH Path to the package file (zip/tar/etc.)
--command.name NAME Environment name without spaces
--command.version SEMVER Semver-compliant version string (1.2.3, 2.0.0-beta, …)
--command.description TEXT Optional text
--command.env-type TYPE Example: isaac, mujoco
--command.visibility VIS PUBLIC (default), PRIVATE, or ORG_MEMBERS
--command.push-timeout SECONDS Request timeout in seconds (default: 300)

Pull Command

Download an environment by ID:

vuer envs-pull \
  --command.id 252454509945688064 \
  --command.output ./downloads \
  --command.filename demo-env.zip \
  --command.timeout 600

If --command.filename is omitted, the tool will try to derive the original filename from the server's Content-Disposition header. Files are stored under the downloads/ directory by default.

Pull Flags

Flag Required Description
--command.id ENV_ID Target environment's environmentId
--command.output DIR Destination directory (default downloads)
--command.filename NAME Override for the saved filename
--command.timeout SECONDS Request timeout in seconds (default: 300)

Hub Configuration

You can also configure Hub settings via CLI options:

vuer sync --hub.url https://custom-hub.example.com/api --hub.auth-token your-token

Error Handling

All network and file-system errors are surfaced as readable messages (prefixed with [ERROR]). Typical causes:

  • Invalid JWT → ensure VUER_AUTH_TOKEN is set and not expired.
  • Missing backend endpoint → ensure VUER_HUB is set.
  • Duplicate name/version on push → server enforces (name, versionId) uniqueness.
  • Missing file path on push or invalid target directory on pull.
  • Timeout errors → increase --command.push-timeout or --command.timeout for large files.

Development

  1. Clone the main repository and navigate into the CLI folder.
  2. Install dependencies:
    pip install -e .
    
  3. Run the CLI locally using vuer ....

Running with uv

Use uv run to execute the CLI without installing it globally:

# Create a new environment workspace
uv run vuer envs-create --command.name my-environment

# Pull an environment by ID
uv run vuer envs-pull --command.id 252454509945688064 --command.output ./downloads

# Push an environment package
uv run vuer envs-push \
  --command.file ./build/my-env.zip \
  --command.name demo-env \
  --command.version 1.2.3 \
  --command.description "Demo package" \
  --command.env-type isaac \
  --command.visibility PUBLIC

# Sync all environments in vuer.json
uv run vuer sync

# Add an environment to vuer.json
uv run vuer add --command.env <environmentId>

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

vuer_cli-0.0.1.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

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

vuer_cli-0.0.1-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file vuer_cli-0.0.1.tar.gz.

File metadata

  • Download URL: vuer_cli-0.0.1.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for vuer_cli-0.0.1.tar.gz
Algorithm Hash digest
SHA256 41e363e0ebd420eadae26f0e63c8d0acdbcbbdbb83a3173a1f1be1cb54f2697d
MD5 15fd61a80ccba539561301a185c58a09
BLAKE2b-256 aeb9fcdc3028f5d91e042821dd6c911f4cbf3aa892f4f8857b609b86ffc506e7

See more details on using hashes here.

File details

Details for the file vuer_cli-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: vuer_cli-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for vuer_cli-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8a175e9f6db4462e8f73acae681e69cc144e9d664463d4353df1191bcb19a981
MD5 1673de05edf24a439e7dcb9768343e48
BLAKE2b-256 a47fde297d76ac57cd939ce4547193d0fd878aa72b11b961ffb53638d4a6a3cd

See more details on using hashes here.

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