Metadata-Version: 2.4
Name: lyceum-cli
Version: 1.1.0
Summary: Command-line interface for Lyceum Cloud
Author-email: Lyceum <support@lyceum.technology>
License: MIT
Project-URL: Homepage, https://lyceum.technology
Project-URL: Documentation, https://docs.lyceum.technology
Project-URL: Dashboard, https://dashboard.lyceum.technology
Keywords: cloud computing,gpu,code execution,docker,ai,inference
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development
Classifier: Topic :: System :: Distributed Computing
Classifier: Topic :: Utilities
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: typer>=0.12.0
Requires-Dist: rich>=13.0.0
Requires-Dist: httpx>=0.24.0
Requires-Dist: PyJWT>=2.8.0
Requires-Dist: boto3>=1.35.0

# Lyceum CLI

Run Python, Docker, and AI inference workloads on [Lyceum Cloud](https://lyceum.technology) GPUs from your terminal.

## Installation

Recommended (isolated environment, no dependency conflicts):

```bash
uv tool install lyceum-cli
# or
pipx install lyceum-cli
```

Or with pip:

```bash
pip install lyceum-cli
```

## Quickstart

```bash
# Authenticate via browser
lyceum auth login

# Run Python code on a GPU
lyceum python run train.py -m gpu.l40s

# Find the best GPU for your training script
lyceum gpu recommend train.py

# Run a Docker image
lyceum docker run python:3.11 -c "python -c 'print(1+1)'"

# Chat with a serverless model (billed per token, no deployment needed)
lyceum infer models
lyceum infer chat -m minimax/minimax-m3 -p "Hello"

# Or deploy a HuggingFace model on dedicated GPUs
lyceum infer deploy meta-llama/Llama-3.1-8B-Instruct
lyceum infer chat -d <deployment-id> -p "Hello"

# Inspect past runs
lyceum jobs history
lyceum jobs logs <execution-id>
lyceum jobs metrics <execution-id>

# Start a GPU VM with SSH access
lyceum vm start -h a100 -k "ssh-ed25519 AAAA..."

# Manage cloud storage
lyceum storage ls
lyceum storage upload ./data --recursive
```

## Commands

| Command | Description |
| --- | --- |
| `lyceum python` | Execute Python code or files on cloud GPUs |
| `lyceum docker` | Run Docker containers |
| `lyceum compose` | Run Docker Compose applications |
| `lyceum notebook` | Launch Jupyter notebooks |
| `lyceum jobs` | List, inspect, and abort executions (status, logs, metrics) |
| `lyceum gpu` | Recommend the optimal GPU for your code; list machine types |
| `lyceum infer` | Serverless chat/embeddings and dedicated deployments |
| `lyceum storage` | Manage files in cloud storage |
| `lyceum env` | Encrypted environment variables for executions |
| `lyceum vm` | Start and manage GPU VMs |
| `lyceum auth` | Login, logout, status, personal API keys |
| `lyceum org` | Organizations, members, billing, org API keys |

Run `lyceum <command> --help` for details on any command. Most list/status
commands accept `--json` for machine-readable output.

## Configuration

Credentials and settings live in `~/.lyceum/config.json`. Useful environment variables:

- `LYCEUM_ORG` — override the active organization slug
- `IRIS_PROXY_URL` — override the inference proxy URL

## Links

- [Dashboard](https://dashboard.lyceum.technology)
- [Documentation](https://docs.lyceum.technology)
- Support: support@lyceum.technology
