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.3.tar.gz (6.9 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.3-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nanda_sdk-0.1.3.tar.gz
  • Upload date:
  • Size: 6.9 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.3.tar.gz
Algorithm Hash digest
SHA256 f7cbb23c0445522f9d64a904698e65197adad7a552acc430c509081d4f24662a
MD5 37274143747d7ac1e484bbab6b285c51
BLAKE2b-256 74a2c9d3ee07e4487dec83f63b96f04199c7e2bf32b97fcfd6d3340cdb5aec6a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nanda_sdk-0.1.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 05457be7c64919edd67f789118d24bb8cc2760bfdf1fb6fffa7ba1294d635c4a
MD5 76113b4e011ef7715ad83dba1a2e3193
BLAKE2b-256 3d88ddea6cf58acf7aa467a80feda88eed3585adb4ab6d02d28cf95aae172801

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