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 git+https://github.com/aidecentralized/nanda-sdk.git

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.1.tar.gz (8.0 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.1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nanda_sdk-0.1.1.tar.gz
  • Upload date:
  • Size: 8.0 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.1.tar.gz
Algorithm Hash digest
SHA256 ef16701be3eeb3c5005f98ababdf1a22b426059e221f8bec16ce12496c49af49
MD5 225925cb2879a835dd7212baf735228c
BLAKE2b-256 d74ba5676d16438eba3fda7559a6fea11643a1f74bea5ba9c088234e78ec451d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nanda_sdk-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.7 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5db26ecee87c8a48a148999c435a3c30b8f4de47f8ebb074a5bfe1331f3ec1b4
MD5 56d1354b3a94ce2d6edb737dfbb80351
BLAKE2b-256 50783e08aa4266c8e681eb9bd23900b314c3152733c63f047ef44eb45947625a

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