Claude Code Plugins

Community-maintained marketplace

Feedback

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.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

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

# List available GPUs (non-interactive)
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py list

# Filter by GPU type and cloud
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py list --gpu-type h100 --compute secure-cloud

# Rent by selection number (from list output)
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py rent --select 1

# Rent by offering ID directly
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

# Standard login (opens browser)
basilica login

# Device code flow (for WSL, SSH, containers)
basilica login --device-code

# Logout
basilica logout

# Check balance
basilica balance

Listing GPUs

# List all available GPUs
basilica ls

# Filter by GPU type
basilica ls h100
basilica ls a100

# Filter by cloud type
basilica ls --compute secure-cloud
basilica ls --compute community-cloud

# Additional filters
basilica ls --gpu-min 2 --gpu-max 8
basilica ls --price-max 5.00
basilica ls --memory-min 80
basilica ls --country US

# JSON output
basilica ls --json

Starting Rentals

Note: basilica up requires interactive TTY. In Claude Code, use the workaround script above.

In a terminal:

# Interactive GPU selection
basilica up

# Filter to GPU type (still requires selection)
basilica up h100
basilica up a100

# Specify cloud type
basilica up --compute secure-cloud
basilica up --compute community-cloud

# Detached mode (don't auto-connect)
basilica up -d

# Additional options
basilica up --gpu-count 4
basilica up --country US
basilica up --no-ssh  # Faster startup without SSH

Managing Rentals

# List active rentals
basilica ps

# Show rental history
basilica ps --history

# Filter by cloud type
basilica ps --compute secure-cloud

# Check specific rental
basilica status <rental-id>

# Terminate rental
basilica down <rental-id>

# Terminate all rentals
basilica down --all

# Restart container
basilica restart <rental-id>

Executing Code

# Execute command on rental
basilica exec "python train.py" --target <rental-id>

# If only one active rental, --target is optional
basilica exec "nvidia-smi"
basilica exec "pip install -r requirements.txt"

File Transfer

# Copy file to rental
basilica cp train.py <rental-id>:/workspace/

# Copy directory to rental
basilica cp ./project/ <rental-id>:/workspace/project/

# Download file from rental
basilica cp <rental-id>:/workspace/model.pth ./

# Download directory
basilica cp <rental-id>:/workspace/checkpoints/ ./checkpoints/

SSH Access

# SSH into instance
basilica ssh <rental-id>

# Port forwarding (e.g., Jupyter)
basilica ssh <rental-id> -L 8888:localhost:8888

# Remote port forwarding
basilica ssh <rental-id> -R 9999:localhost:9999

Logs

# View logs
basilica logs <rental-id>

# Follow logs in real-time
basilica logs <rental-id> --follow

# Tail last N lines
basilica logs <rental-id> --tail 100

SSH Key Management

# Add SSH key
basilica ssh-keys add

# Add with specific file
basilica ssh-keys add --file ~/.ssh/id_rsa.pub

# List registered keys
basilica ssh-keys list

# Delete key
basilica ssh-keys delete

API Token Management

# Create API token
basilica tokens create <name>

# List tokens
basilica tokens list

# Revoke token
basilica tokens revoke <name>

Funding

# Show deposit address
basilica fund

# List deposit history
basilica fund list --limit 100

Common Workflows

PyTorch Training (Claude Code)

# 1. List available GPUs using workaround script
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py list --compute secure-cloud

# 2. Rent GPU by selection number
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py rent --select 1
# Note the rental ID from output

# 3. Copy training files
basilica cp train.py <rental-id>:/workspace/
basilica cp requirements.txt <rental-id>:/workspace/

# 4. Install dependencies and run training
basilica exec "pip install -r /workspace/requirements.txt" --target <rental-id>
basilica exec "python /workspace/train.py --epochs 10" --target <rental-id>

# 5. Download results
basilica cp <rental-id>:/workspace/model.pth ./

# 6. Terminate when done
basilica down <rental-id>

PyTorch Training (Terminal with TTY)

# 1. Start GPU rental (interactive selection)
basilica up h100 --compute secure-cloud -d
# Note the rental ID

# 2. Copy training files
basilica cp train.py <rental-id>:/workspace/

# 3. Run training
basilica exec "python /workspace/train.py" --target <rental-id>

# 4. Download results and cleanup
basilica cp <rental-id>:/workspace/model.pth ./
basilica down <rental-id>

Jupyter Notebook

# 1. Start rental and SSH with port forward
basilica up h100 -d
basilica ssh <rental-id> -L 8888:localhost:8888

# 2. In SSH session, start Jupyter
jupyter lab --ip=0.0.0.0 --port=8888 --no-browser

# 3. Open http://localhost:8888 in browser

Check Costs

# Check current balance
basilica balance

# View rental history with costs
basilica ps --history

# Get deposit address if needed
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
# Or for non-browser environments:
basilica login --device-code

"Insufficient balance"

basilica balance  # Check current balance
basilica fund     # Get deposit address

"No GPUs available"

basilica ls  # Check different GPU types
basilica ls --compute community-cloud  # Try community cloud

"SSH key not registered"

basilica ssh-keys add

"Connection timeout"

basilica status <rental-id>  # Check if still running
basilica logs <rental-id>    # Check for errors

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.

# Show help
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py --help

# List offerings
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py list [--gpu-type TYPE] [--compute CLOUD]

# Rent by selection
python ~/.claude/skills/basilica-cli-helper/scripts/basilica_up.py rent --select NUMBER

# Rent by offering ID
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.