cLLMHub CLI
The command-line interface for cLLMHub — publish local LLMs to the cLLMHub network.
What it does
- Publish models from any local inference backend to the hub so anyone with an API key can use them
- Connect external backends (Ollama, vLLM, LM Studio, llama.cpp, MLX) to the hub
- Chat completions with multimodal support (text + images) across all backends
- Authenticate via OAuth device flow, manage credentials
Quick start
# Install (pick one)
npm install -g cllmhub # npm
brew install cllmhub/tap/cllmhub # Homebrew
curl -fsSL https://raw.githubusercontent.com/cllmhub/cllmhub-cli/main/install.sh | sh # shell script
# Authenticate
cllmhub login
# Publish a model (interactive selection)
cllmhub publish
Installation
npm / npx
# Install globally
npm install -g cllmhub
# Or run without installing
npx cllmhub --help
The npm package automatically downloads the correct pre-built binary for your platform on install.
Homebrew
brew tap cllmhub/tap
brew install cllmhub
Pre-built binaries
Download from your hub's Settings > Downloads page, or grab from GitHub Releases. Available for:
| Platform |
Architecture |
| macOS |
Apple Silicon (arm64), Intel (amd64) |
| Linux |
x86_64 (amd64), ARM64 |
| Windows |
x86_64 (amd64) |
Install script
curl -fsSL https://raw.githubusercontent.com/cllmhub/cllmhub-cli/main/install.sh | sh
Build from source
Requires Go 1.22+.
git clone https://github.com/cllmhub/cllmhub-cli.git
cd cllmhub-cli
make build
# Binary is at bin/cllmhub
Cross-compile for all platforms:
make build-all
Commands
Publishing
cllmhub publish
Publish models to the cLLMHub network. All publishing goes through the background daemon.
Use flags to specify a model and backend directly, or run without flags for interactive selection from detected backends.
# Direct publish
cllmhub publish -m llama3-70b -b ollama
cllmhub publish -m mixtral-8x7b -b vllm
cllmhub publish -m my-model -b mlx --api-key sk-xxx
# Interactive selection
cllmhub publish
Flags:
--model, -m Model name to publish
--backend, -b Backend type: ollama | vllm | lmstudio | llamacpp | mlx (default: ollama)
--backend-url Backend endpoint URL (overrides default for the backend type)
--api-key API key for the backend server
--description, -d Model description
--max-concurrent, -c Maximum concurrent requests (0 = auto-detect, default: 0)
cllmhub unpublish [model...]
Stop serving one or more published models. Run without arguments to interactively select from currently published models.
# Unpublish by name
cllmhub unpublish llama3-70b
# Interactive selection
cllmhub unpublish
Daemon
The daemon runs in the background and manages model publishing bridges.
cllmhub start
Start the cLLMHub daemon.
cllmhub start
cllmhub stop
Stop the running cLLMHub daemon.
cllmhub status
Show daemon status, including PID, uptime, and currently published models.
cllmhub logs
Show daemon logs.
Flags:
--follow, -f Follow log output
--lines, -n Number of lines to show (default: 50)
Account
cllmhub login
Authenticate with cLLMHub using OAuth 2.0 device flow. Opens a browser to complete authorization.
cllmhub whoami
Show the currently logged-in user.
cllmhub logout
Revoke credentials on the server and remove the local credentials file.
cllmhub update
Update the CLI to the latest version. The CLI also checks for updates automatically after each command.
Supported backends
All backends support both text completions and chat completions (OpenAI-compatible /v1/chat/completions format). Multimodal messages with image content parts are supported — Ollama automatically converts OpenAI-format image parts to its native base64 image format.
License
Apache License 2.0 — see LICENSE.