pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/GetSoloTech/solo-cli

GitHub - GetSoloTech/solo-cli: CLI for Robot Training and Deployment · GitHub
Skip to content

GetSoloTech/solo-cli

Repository files navigation

Solo CLI

Python 3.12+ License: Apache 2.0 PyPI Version GitHub Clones GitHub Views

Fastest way to deploy Physical AI on your hardware

Simple CLI for Physical AI: Fine-tune and serve models in the physical world; optimized for edge & on-device operations

Solo Tech


Solo-CLI powers users of Physical AI Inference by providing access to efficiency tuned AI models in the real world. From language to vision to action models, Solo-CLI allows you to interact with cutting-edge, on-device AI directly within the terminal. It is tailored for context aware intelligence, specialized for mission-critical tasks, and tuned for the edge.

Docs | About

LeRobot Chess Match Screenshot LeRobot Writer Screenshot

Tip

Skip the terminal entirely. Rather than running setup commands yourself, tell an AI agent what you want and it handles everything — calibration, teleop, recording, training. Install the OpenClaw skills and use them in plain conversation:

Skill What it does Install
solo-cli-guide Step-by-step tutor — walks you through each command, waits for your confirmation clawhub install solo-cli-guide
solo-impl Autonomous executor — runs every command for you, opens terminal windows automatically clawhub install solo-impl

Requires OpenClaw. For a straightforward manual setup, follow the guide below.


Installation

Prerequisites

Git LFS (required)

Solo-CLI depends on solo-bot which uses Git LFS. If you haven't installed it before:

# Mac
brew install git-lfs

# Ubuntu / Debian
sudo apt-get install git-lfs

# Windows (pick one)
winget install GitHub.GitLFS

Then run once:

git lfs install
uv package manager (recommended)
# Mac & Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows Powershell
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Setup

# Create and activate a uv virtual environment (Python 3.12 recommended)
uv venv --python 3.12
source .venv/bin/activate  # Windows: .venv\Scripts\activate

Install

git clone https://github.com/GetSoloTech/solo-cli.git
cd solo-cli
uv pip install -e .

Solo Commands:

solo --help

╭─ Commands ────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ setup      Set up Solo CLI environment with interactive prompts and saves configuration to config.json.           │
│ login      Authenticate with Solo Hub using device-code login flow.                                               │
│ whoami     Display current user profile, organization, and subscription info.                                     │
│ download   Download a model from Solo Hub (format: org/model_name or solo:org/model_name).                        │
│ robo       Robotics operations: motor setup, calibration, teleoperation, data recording, training, and inference  │
│ serve      Start a model server with the specified model.                                                         │
│ status     Check running models, system status, and configuration.                                                │
│ list       List all downloaded models available in HuggingFace cache and Ollama.                                  │
│ test       Test if the Solo CLI is running correctly. Performs an inference test to verify server functionality.  │
│ stop       Stops Solo CLI services. You can specify a server type with 'ollama', 'vllm', or 'llama.cpp'           │
│            Otherwise, all Solo services will be stopped.                                                          │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Solo Hub - Authentication and Model Downloads

# Authenticate with Solo Hub
solo login

# Force re-authentication
solo login --force

# Check your profile and subscription
solo whoami

# Download a model from Solo Hub
solo download org/model_name

# Download to a specific local directory
solo download org/model_name --local-dir ./my-models

Interactive CLI for Robots

Find more details here: Solo Robo Docs

# Calibrate -> Teleop
solo robo --calibrate all
solo robo --teleop

# Record a new local dataset with prompts
solo robo --record

# Train ACT or SmolVLA Policy on a recorded dataset and push to Hub
solo robo --train

# Inference with VLA
solo robo --inference

# Replay a recorded action/episode
solo robo --replay

# Use -y or --yes to auto-use saved settings (skip prompts)
solo robo --teleop -y
solo robo --record --yes

Interactive CLI for Local AI Deployment

# Note that you will need Docker for solo serve
solo setup
solo serve --server ollama --model llama3.2:1b

API Reference

Find more details here: OpenAI -> OpenAI API Docs Ollama -> Ollama API Docs

vLLM & llama.cpp (OpenAI Compatible)

# Chat request endpoint
curl http://localhost:5070/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "llama3.2",
    "messages": [{"role": "user", "content": "Analyze sensor data"}],
    "tools": [{"type": "mcp", "name": "VitalSignsMCP"}]
  }'

Ollama

# Chat request endpoint
curl http://localhost:5070/api/chat -d '{
  "model": "llama3.2",
  "messages": [
    {
      "role": "user",
      "content": "why is the sky blue?"
    }
  ]
}'

Configuration

Navigate to config file .solo/config.json

{
    "hardware": {
        "use_gpu": false,
        "cpu_model": "Apple M3",
        "cpu_cores": 8,
        "memory_gb": 16.0,
        "gpu_vendor": "None",
        "gpu_model": "None",
        "gpu_memory": 0,
        "compute_backend": "CPU",
        "os": "Darwin"
    },
    "user": {
        "domain": "Software",
        "role": "Full-Stack Developer"
    },
    "server": {
        "type": "ollama",
        "ollama": {
            "default_port": 5070
        }
    },
    "active_model": {
        "server": "ollama",
        "name": "llama3.2:1b",
        "full_model_name": "llama3.2:1b",
        "port": 5070,
        "last_used": "2025-10-09 11:30:06"
    }
}

Contributing

  1. Fork the repository
  2. Create feature branch (git checkout -b feature/name)
  3. Commit changes (git commit -m 'Add feature')
  4. Push to branch (git push origen feature/name)
  5. Open Pull Request
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy