install
K3 — the hub's own installer for its clients (lucen, lucen-device, lucen-mcp)
GET /install.sh
The installer for this hub's clients
K3 — curl -fsSL <hub>/install.sh | sh -s -- cli (also device, mcp; an extra such as cli[rollout] is allowed) installs the named tools from this hub's own package index, rendered for this hub's public URL (PUBLIC_API_URL, else the URL the request reached; never cached). The API image builds lucen-cli, lucen-sdk, lucen-mcp and lucen-device as pure-Python wheels from its own commit and serves them as static files beside this script: a PEP 503 index at /install/simple/ and the wheels under /install/files/ (files, not operations). Dependencies resolve from PyPI. The script uses uv when present (this index first), else python3 -m venv + pip (the hub's wheels by direct URL), else installs uv; then it writes the hub's URL — never a key — into ~/.config/lucen/credentials when that file does not exist, so lucen and lucen-device talk to the hub that served them. 404 on a hub whose image carries no wheels (a checkout).
Responses
| Status | Description | Body |
|---|---|---|
200 | The shell script. | string |
404 | Resource not found (or hidden from the caller). | Problem |