Skip to main content

SDK for setting up Internet of Agents servers

Project description

NANDA SDK

A Python SDK for setting up Internet of Agents servers. This tool automates the process of configuring servers with DNS records, SSL certificates, and required software.

Installation

Pre-requistie commands

ssh into the servers

sudo apt update  && sudo apt install python3 python3-pip
pip install nanda-sdk
nanda-sdk --anthropic-key <your_anthropic_api_key> --domain <myapp.example.com> 

Quick Setup Guide

1. Install the SDK

pip install nanda-sdk

2. Run the Setup

The setup requires two mandatory parameters:

  • --anthropic-key: Your Anthropic API key
  • --domain: Your complete domain name (e.g., myapp.example.com)

Optional parameters:

  • --smithery-key: Your Smithery API key for connecting to MCP servers. A default key will be provided by application for connectivitiy
  • --agent-id: A specific agent ID (if not provided, a random 6-digit number will be generated)
  • --num-agents: Number of agents to set up (defaults to 1 if not specified)

Example commands:

# Basic setup with random agent ID
nanda-sdk --anthropic-key <your_anthropic_api_key> --domain <myapp.example.com> 

# Setup with specific agent ID
nanda-sdk --anthropic-key <your_anthropic_api_key> --domain <myapp.example.com> --agent-id 123456

# Setup with multiple agents
nanda-sdk --anthropic-key <your_anthropic_api_key> --domain <myapp.example.com> --num-agents 3

# Setup with your own smithery key
nanda-sdk --anthropic-key <your_anthropic_api_key> --domain <myapp.example.com> --smithery-key <your_smithery_api_key>

3. Verify Installation

After setup completes, verify your agent is running:

# Check service status
systemctl status internet_of_agents

# View logs
journalctl -u internet_of_agents -f

# list of servers 
ps aux | grep run_ui_agent_https

Your agent will be:

  • Running as a systemd service
  • Accessible at your specified domain
  • Automatically starting on server reboot

What the Setup Does

The SDK automatically:

  1. Generates a random 6-digit agent ID (if not specified)
  2. Gets your server's public IP
  3. Creates a DNS record (e.g., chat123456.nanda-registry.com)
  4. Installs required packages:
    • Python and pip
    • Git
    • Certbot for SSL
    • Nginx
  5. Sets up SSL certificates
  6. Clones the repository
  7. Sets up Python virtual environment
  8. Configures the systemd service

Troubleshooting

If you encounter any issues:

  1. Check the service status:
systemctl status internet_of_agents
  1. View detailed logs:
journalctl -u internet_of_agents -f
  1. For Route53 DNS issues, contact the IOA support team.

Requirements

  • Python 3.6 or higher
  • Linux server (tested on Ubuntu)
  • Anthropic API key

Support

If you encounter any issues with Route53 DNS setup, please contact the IOA support team.

License

MIT License

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

nanda_sdk-0.1.2.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

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

nanda_sdk-0.1.2-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file nanda_sdk-0.1.2.tar.gz.

File metadata

  • Download URL: nanda_sdk-0.1.2.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.6

File hashes

Hashes for nanda_sdk-0.1.2.tar.gz
Algorithm Hash digest
SHA256 44ab648e970562954505cbc070cb68e233f886369acecaf1eb5aca821b5f9ef4
MD5 b93d2beb79c4331c7be829c5614f6c53
BLAKE2b-256 7cea9d460a8a59639b1cc270e7799244c8bc6d018db78e4eb5c7764ffb43d838

See more details on using hashes here.

File details

Details for the file nanda_sdk-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: nanda_sdk-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.6

File hashes

Hashes for nanda_sdk-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3368cb334eaf404af8c3059fe471470d2e196d948455ade8d09a96e59376b40a
MD5 86a5daa2f9d4dbfa2472dbdd90809b24
BLAKE2b-256 6fd5705896b443f731ef6c78b43747faedd55096941f8dbb153155735013dab8

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