Skip to main content

Conserver CLI

PyPI version Tests License: MIT Python 3.10+

A command-line tool to manage vcon-server Docker containers.

Quick Start

# Install
pipx install conserver-cli

# Start the server
conserver start

# Check status
conserver status

# View logs
conserver logs -f

Features

  • Container Management: Start, stop, restart, and upgrade vcon-server containers
  • Image Management: List, pull, upgrade, and downgrade vcon-server images from ECR
  • Configuration Management: View, edit, and validate configuration files
  • Health Monitoring: Check service health with detailed diagnostics
  • Log Viewing: Stream and filter container logs
  • Rich Terminal UI: Beautiful tables, colors, and progress indicators

Installation

pipx install conserver-cli

Using pip

pip install conserver-cli

Using Homebrew (macOS/Linux)

brew tap vcon-dev/tap
brew install conserver

From Source

git clone https://github.com/vcon-dev/vcon-server-cli.git
cd vcon-server-cli
poetry install
poetry shell
conserver --help

Requirements

  • Python 3.10+
  • Docker and Docker Compose
  • vcon-server installation

Usage

Container Commands

# Start all containers
conserver start

# Start with build
conserver start --build

# Start specific services
conserver start --services api,redis

# Stop containers
conserver stop

# Stop and remove containers
conserver stop --remove

# Restart containers
conserver restart

# Upgrade to latest version
conserver upgrade

# Upgrade with dry-run
conserver upgrade --dry-run

Status and Monitoring

# Show container status
conserver status

# Show status with health details
conserver status --health

# Watch status continuously
conserver status --watch

# Output as JSON
conserver status --format json

# Check service health
conserver health

# View logs
conserver logs

# Follow logs
conserver logs -f

# Show last 50 lines
conserver logs --tail 50

# Filter logs
conserver logs --grep "error"

# Logs for specific service
conserver logs api

Configuration

# Initialize configuration from examples
conserver config init

# Show current configuration
conserver config show

# Show .env file
conserver config show --file env

# Show with secrets unmasked
conserver config show --secrets

# Edit configuration
conserver config edit

# Edit specific file
conserver config edit --file env

# Set a value
conserver config set REDIS_URL redis://localhost:6379 --file env
conserver config set links.transcribe.options.model_size large --file config

# Validate configuration
conserver config validate

Image Management

# List available remote tags
conserver images list --remote

# List local images
conserver images list

# Pull specific version
conserver images pull v1.2.0

# Pull latest main branch
conserver images pull main

# Switch to a version (and restart)
conserver images use v1.2.0 --restart

# Upgrade to latest version
conserver images upgrade

# Downgrade to older version
conserver images downgrade v1.1.0

# Show image info
conserver images info v1.2.0

# Remove old images (keep 3 most recent)
conserver images prune

Server Path

By default, conserver looks for the vcon-server installation in:

  1. --server-path CLI option
  2. VCON_SERVER_PATH environment variable
  3. Common relative locations (./vcon-server, ../vcon-server)
# Specify server path
conserver start --server-path /path/to/vcon-server

# Or set environment variable
export VCON_SERVER_PATH=/path/to/vcon-server
conserver start

Command Reference

Command Description
conserver start Start containers
conserver stop Stop containers
conserver restart Restart containers
conserver status Show container status
conserver health Check service health
conserver logs View container logs
conserver upgrade Upgrade to latest version
conserver images list List available images
conserver images pull Pull an image
conserver images use Switch to a version
conserver images upgrade Upgrade image version
conserver images downgrade Downgrade image version
conserver config show Show configuration
conserver config edit Edit configuration
conserver config set Set a config value
conserver config validate Validate configuration
conserver config init Initialize from examples

Configuration Files

Conserver manages these configuration files in your vcon-server installation:

File Description
.env Environment variables (REDIS_URL, API tokens, etc.)
config.yml Application configuration (links, chains, storages)
docker-compose.yml Docker container definitions

Development

Setup

git clone https://github.com/vcon-dev/vcon-server-cli.git
cd vcon-server-cli
poetry install
poetry shell

Running Tests

# Run all tests
pytest

# Run with coverage
pytest --cov=conserver --cov-report=html

# Run specific test file
pytest tests/test_cli.py -v

Code Quality

# Lint
ruff check .

# Format
ruff format .

# Type check
mypy conserver

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

License

MIT License - see LICENSE for details.

  • vcon-server - The vCon processing server
  • vcon - vCon specification and libraries

Metadata

Release files for conserver-cli 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for conserver-cli 0.2.0
File Size Uploaded
conserver_cli-0.2.0.tar.gz 29.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for conserver-cli 0.2.0
File Interpreter ABI Platform
conserver_cli-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 65.4 kB

Release files / conserver_cli-0.2.0.tar.gz

Download URL conserver_cli-0.2.0.tar.gz
Size 29.1 kB
Tags Source
SHA-256 checksum
How to use checksums
4248effe8f5a61a381dfee6e2769b758f480c8f0e4e02900cc7a5d18271c89cb
BLAKE2b-256 checksum
How to use checksums
272a914bd737de3005ebad904a64f3df6d2614fdafb72934749dfac6d75e8a98
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jan 29, 2026.

Transparency log

Release files / conserver_cli-0.2.0-py3-none-any.whl

Download URL conserver_cli-0.2.0-py3-none-any.whl
Size 36.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cca608c729458c1162ddb1dca68aaa937f38ec0eb9e26fd5d2cd4e871d40d186
BLAKE2b-256 checksum
How to use checksums
b0db20fb383cccd09a09c7ecdacba4007dd86614c15781e93601dd112bb9d3b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jan 29, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page