Skip to main content

Space Agent Network CLI - Device management and OTP authentication

Project description

🚀 SAN CLI - Space Agent Network CLI

Secure Device Management with OTP Authentication

PyPI Status Version License

🎯 What is SAN CLI?

SAN CLI (Space Agent Network CLI) is a secure command-line tool for managing devices in the NexusCore MESH Network:

  • 🔐 OTP Authentication: Secure one-time password device registration
  • 🌐 Multi-Platform: Works on macOS, Linux, and Windows
  • 📦 Easy Installation: Install via Homebrew, pipx, or pip
  • 🔧 Device Management: Full control over your MESH network devices
  • 🤖 AI Integration: Manage Ollama models and AI services
  • 📊 Marketplace: Browse and install infrastructure packages
  • Fast & Lightweight: Minimal dependencies, maximum performance

🌐 Your Device Gets a URL

Every Neuron device gets a unique subdomain:

Device ID:  d02bc0a8-16ef-41e4-8ecb-152ae5786d6e
Device URL: d02bc0a8.16ef.41e4.8ecb.cli.nexuscore.cloud

Use Cases:

  • Host gaming servers behind NAT
  • Run POS systems in restaurants
  • Deploy home media servers (Plex, Jellyfin)
  • Control IoT devices remotely
  • Distribute AI/ML workloads

📦 Installation

macOS (Homebrew - Recommended)

brew tap Nexus-Core-Cloud/san https://github.com/Nexus-Core-Cloud/homebrew-san
brew install san-cli

macOS/Linux/Windows (pipx)

pipx install san-cli

Linux/Windows (pip)

pip install san-cli

🚀 Quick Start

1. Get Your OTP Token

Contact your administrator or generate a token via the NexusCore dashboard.

2. Login

san login --otp <your-otp-token>

3. Verify Installation

san --version
san status

4. Start Managing Devices

# View device information
san status

# Install SPACE Agent
san install

# Manage marketplace packages
san marketplace list

# Pull AI models
san ollama pull llama3.2:3b

🛠️ Available Commands

Command Description
san login --otp <token> Authenticate with OTP token
san status Show device status
san install Install SPACE Agent
san api-server Start API server for remote management
san marketplace list Browse available packages
san ollama pull <model> Download AI models
san --version Show CLI version
san --help Show all commands

🔧 API Server (Auto-Start on Boot)

The SAN CLI API Server enables remote package management via SPACE Agent.

One-Command Setup

san setup

That's it! This will:

  • ✅ Install API server as system service
  • ✅ Start automatically on boot
  • ✅ Restart on failure
  • ✅ Run in background
  • ✅ Log to /tmp/san-cli-api.log

Uninstall

san setup --uninstall

Manual Control

macOS:

# Start
launchctl start com.nexuscore.san-cli-api

# Stop
launchctl stop com.nexuscore.san-cli-api

# Status
launchctl list | grep san-cli-api

# Logs
tail -f /tmp/san-cli-api.log

Linux:

# Start
sudo systemctl start san-cli-api

# Stop
sudo systemctl stop san-cli-api

# Status
sudo systemctl status san-cli-api

# Logs
sudo journalctl -u san-cli-api -f

⚙️ Configuration

Config file location: ~/.neuron/config.json

{
  "api_url": "https://api.support.nexuscore.cloud",
  "device_id": "kai-macbook-pro-final",
  "jwt_token": "dev_2e511666b2dd5fd5b5be2094e57c5e5d2bbdfd6e7aace6fb65f08631a401fc9e",
  "device_api_key": "dev_2e511666b2dd5fd5b5be2094e57c5e5d2bbdfd6e7aace6fb65f08631a401fc9e",
  "brand_id": "nexuscore"
}

Permissions: 600 (owner read/write only - secure)
Your Device URL: kai.mesh.nexuscore.cloud


🔒 Security

  • One-Time Use Tokens - OTP tokens expire after first use
  • Secure Storage - Credentials stored with 600 permissions
  • No Plaintext Logging - Sensitive data is never logged
  • 1-Hour Expiration - Tokens automatically expire after 1 hour
  • API Key Authentication - Device API keys for secure communication

Connection Methods

VPN (Preferred)

  • Fastest and most secure
  • Direct mesh network connection
  • Lower latency
  • Requires WireGuard VPN setup

HTTPS (Fallback)

  • Works through any firewall
  • NAT traversal automatic
  • TLS encrypted
  • No VPN required

The agent automatically detects which method is available and uses the best option.

Hardware Detection

The agent automatically detects and reports:

  • CPU: Cores, threads, model, frequency
  • Memory: Total RAM, available RAM
  • Storage: Total storage across all disks
  • GPU: NVIDIA, AMD, or Intel GPUs
  • Display: HDMI/display outputs
  • Network: Network interfaces and IPs
  • OS: Operating system and architecture

Requirements

  • Python 3.8 or higher
  • Linux, macOS, or Windows
  • Internet connection
  • (Optional) WireGuard VPN for best performance

Development

Install from source

git clone https://github.com/nexuscore/neuron-cli.git
cd neuron-cli
pip install -e .

Run tests

pip install -e ".[dev]"
pytest

💡 About NexusCore

SAN CLI is part of the NexusCore MESH Network - a distributed computing platform that connects devices worldwide for AI inference, edge computing, and collaborative workloads.

Built by: Kai Gartner


🆘 Support

Need help? We're here for you!


📄 License

Commercial Use via Nexus Core Cloud Support

This software is proprietary and licensed for commercial use through Nexus Core Cloud Support.
For licensing inquiries, please contact https://support.nexuscore.cloud/


Troubleshooting

Agent won't start

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

san_cli-1.0.35.tar.gz (81.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

san_cli-1.0.35-py3-none-any.whl (96.0 kB view details)

Uploaded Python 3

File details

Details for the file san_cli-1.0.35.tar.gz.

File metadata

  • Download URL: san_cli-1.0.35.tar.gz
  • Upload date:
  • Size: 81.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for san_cli-1.0.35.tar.gz
Algorithm Hash digest
SHA256 5626363caa6327fe71dacfdbcf1a2257a7564967f924c915e5230e1292af5e80
MD5 992d6cedbc6a0067b2e0e23071b6b60e
BLAKE2b-256 9ce9881b8d4367fe6a7a4665f72b9d33970e0199f68790891f5dc8d31ba571d6

See more details on using hashes here.

File details

Details for the file san_cli-1.0.35-py3-none-any.whl.

File metadata

  • Download URL: san_cli-1.0.35-py3-none-any.whl
  • Upload date:
  • Size: 96.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for san_cli-1.0.35-py3-none-any.whl
Algorithm Hash digest
SHA256 d6c096989a70de7317e4cfcd3f87b37612f28933d26465eb9766a09d4c2e5ded
MD5 bd1ca52963a2c99faecac271b9d9cc11
BLAKE2b-256 14ca8a48d826075d16a80438c68d8cdd5aa1bef1bc5e0e430f621d6204045bb9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page