| name | basilica-cli-helper |
| description | This skill should be used when users need to rent GPUs, run ML training jobs, or manage compute resources on Basilica's decentralized GPU marketplace. Use it for PyTorch/TensorFlow training, distributed training setup, GPU rental management, cost monitoring, or any Basilica CLI workflows. Includes workaround for non-TTY environments like Claude Code. |
Basilica CLI Helper
Rent GPUs and run ML training jobs on Basilica's decentralized compute platform.
This skill helps access high-performance GPUs through Basilica's CLI. Use this when needing to:
- Rent GPUs for machine learning training
- Run distributed training jobs
- Manage compute resources and costs
- Execute code on remote GPU instances
Claude Code TTY Limitation
IMPORTANT: The basilica up command requires interactive TTY selection, which fails in Claude Code's non-terminal environment.
Workaround: Use the bundled script
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py list
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py list --gpu-type h100 --compute secure-cloud
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py rent --select 1
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py rent hyperstack-165
This script uses the Basilica REST API directly, bypassing the interactive selection.
Quick Reference
Essential Commands
| Command | Description |
|---|
basilica login | Authenticate with Basilica |
basilica ls | List available GPUs with pricing |
basilica ps | List your active rentals |
basilica status <uid> | Check rental status |
basilica exec "cmd" --target <uid> | Execute command on rental |
basilica ssh <uid> | SSH into instance |
basilica cp <src> <dst> | Copy files to/from instance |
basilica down <uid> | Terminate rental |
basilica balance | Check account balance |
Cloud Types
Basilica offers two compute sources:
| Cloud | Flag | Description |
|---|
| Secure Cloud | --compute secure-cloud | Datacenter GPUs (Hyperstack, DataCrunch, Lambda) |
| Community Cloud | --compute community-cloud | Decentralized miner GPUs (Bittensor network) |
Command Reference
Authentication
basilica login
basilica login --device-code
basilica logout
basilica balance
Listing GPUs
basilica ls
basilica ls h100
basilica ls a100
basilica ls --compute secure-cloud
basilica ls --compute community-cloud
basilica ls --gpu-min 2 --gpu-max 8
basilica ls --price-max 5.00
basilica ls --memory-min 80
basilica ls --country US
basilica ls --json
Starting Rentals
Note: basilica up requires interactive TTY. In Claude Code, use the workaround script above.
In a terminal:
basilica up
basilica up h100
basilica up a100
basilica up --compute secure-cloud
basilica up --compute community-cloud
basilica up -d
basilica up --gpu-count 4
basilica up --country US
basilica up --no-ssh
Managing Rentals
basilica ps
basilica ps --history
basilica ps --compute secure-cloud
basilica status <rental-id>
basilica down <rental-id>
basilica down --all
basilica restart <rental-id>
Executing Code
basilica exec "python train.py" --target <rental-id>
basilica exec "nvidia-smi"
basilica exec "pip install -r requirements.txt"
File Transfer
basilica cp train.py <rental-id>:/workspace/
basilica cp ./project/ <rental-id>:/workspace/project/
basilica cp <rental-id>:/workspace/model.pth ./
basilica cp <rental-id>:/workspace/checkpoints/ ./checkpoints/
SSH Access
basilica ssh <rental-id>
basilica ssh <rental-id> -L 8888:localhost:8888
basilica ssh <rental-id> -R 9999:localhost:9999
Logs
basilica logs <rental-id>
basilica logs <rental-id> --follow
basilica logs <rental-id> --tail 100
SSH Key Management
basilica ssh-keys add
basilica ssh-keys add --file ~/.ssh/id_rsa.pub
basilica ssh-keys list
basilica ssh-keys delete
API Token Management
basilica tokens create <name>
basilica tokens list
basilica tokens revoke <name>
Funding
basilica fund
basilica fund list --limit 100
Common Workflows
PyTorch Training (Claude Code)
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py list --compute secure-cloud
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py rent --select 1
basilica cp train.py <rental-id>:/workspace/
basilica cp requirements.txt <rental-id>:/workspace/
basilica exec "pip install -r /workspace/requirements.txt" --target <rental-id>
basilica exec "python /workspace/train.py --epochs 10" --target <rental-id>
basilica cp <rental-id>:/workspace/model.pth ./
basilica down <rental-id>
PyTorch Training (Terminal with TTY)
basilica up h100 --compute secure-cloud -d
basilica cp train.py <rental-id>:/workspace/
basilica exec "python /workspace/train.py" --target <rental-id>
basilica cp <rental-id>:/workspace/model.pth ./
basilica down <rental-id>
Jupyter Notebook
basilica up h100 -d
basilica ssh <rental-id> -L 8888:localhost:8888
jupyter lab --ip=0.0.0.0 --port=8888 --no-browser
Check Costs
basilica balance
basilica ps --history
basilica fund
Troubleshooting
"Selection failed: not a terminal"
This occurs when running basilica up in Claude Code. Use the workaround script:
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py list
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py rent --select <number>
"Not logged in"
basilica login
basilica login --device-code
"Insufficient balance"
basilica balance
basilica fund
"No GPUs available"
basilica ls
basilica ls --compute community-cloud
"SSH key not registered"
basilica ssh-keys add
"Connection timeout"
basilica status <rental-id>
basilica logs <rental-id>
GPU Selection Guide
| Use Case | Recommended GPU | Typical Price |
|---|
| Small models, fine-tuning | A100 (1x) | $1-2/hr |
| Medium models | H100 (1x) | $2-3/hr |
| Large models | 4-8x A100/H100 | $5-20/hr |
| Inference testing | Any 1x GPU | $1-3/hr |
Resources
- Basilica Homepage: https://basilica.ai
- CLI Help:
basilica help <command>
- Version: Check with
basilica --version
Scripts Reference
basilica_up.py
Non-interactive GPU rental script for Claude Code and other non-TTY environments.
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py --help
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py list [--gpu-type TYPE] [--compute CLOUD]
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py rent --select NUMBER
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py rent OFFERING_ID
The script caches offering data to /tmp/basilica_offerings.json for the --select option.