Skip to main content

Ultra-Light Personal AI Agent with Multi-Device Control, Telegram integration, and 20+ tools

Project description

SwiftNode ⚡

Python Version License Status PRs Welcome Platform

An autonomous, pip-installable AI personal agent with multi-device control, Discord/Telegram/WhatsApp integration, long-term RAG memory, and 23+ powerful tools.

FeaturesInstallationQuick StartDocumentationContributing


📖 Overview

SwiftNode is a cutting-edge personal computing intelligence framework. It acts as your localized AI assistant capable of automating your daily workflow across multiple devices. With out-of-the-box support for leading LLMs, memory persistence, and deep OS-level integration, SwiftNode scales from a simple CLI chatbot to a comprehensive multi-node automation network.

Topics/Tags: ai-agent automation llm multi-device telegram-bot discord-bot whatsapp-bot rag python


🚀 Features

Category Capabilities
🤖 Bot Integrations Seamless connections with Telegram, Discord, and WhatsApp (Selenium QR Auth).
🌐 Web Research DuckDuckGo search, URL fetch, Wikipedia, Top News, YouTube transcript extraction.
💻 System Control CPU/RAM/Disk polling, Screenshots, Subprocess management, Process termination.
📋 Clipboard & OS Read & Write clipboard, Desktop push notifications, file zipping and management.
🌍 Network Ops Public IP retrieval, ICMP Ping, LAN device scanner, Bandwidth speed tests.
🐍 Code Execution Secure execution of Python snippets, automated Linting and syntax validation.
📱 Android via ADB Tap, Swipe, Type, APK Install, Screenshots, Screen Recording, internal Shell access.
🧠 Persistent Memory Long-term RAG vector memory backed by Google Embeddings and SQLite.
🔗 Multi-Device Grid HTTP API to control any connected worker node across your Local Area Network.

📦 Installation

Prerequisites

  • Python 3.9+
  • Chrome/ChromeDriver (for WhatsApp Bot functionality)

Install via Source (Development/Current)

git clone https://github.com/ashik2770/SwiftNode.git
cd SwiftNode
pip install -e .

⚡ Quick Start

1. Initial Configuration

Run the automated setup wizard to link your LLM Provider, configure your bot platform, and set up your multi-device network.

swiftnode config

2. Start Your Agent

# Starts the default bot platform specified during config
swiftnode run 

# Or explicitly start a specific platform
swiftnode run --bot telegram
swiftnode run --bot discord
swiftnode run --bot whatsapp

🖥️ CLI Commands

Command Description
swiftnode run 🚀 Start the default messaging bot
swiftnode run --bot <name> 🌐 Start a specific bot (telegram/discord/whatsapp)
swiftnode config ⚙️ Setup or reconfigure your environment
swiftnode serve 🌐 Start multi-device HTTP server node
swiftnode connect <ip:port> 📡 Connect to a remote SwiftNode device
swiftnode tools 🔧 List all active system tools
swiftnode version ℹ️ Show version and system diagnostics

🌐 Multi-Device Control Architecture

Control multiple physical devices from a central brain. Works on PC, Termux (Android), Raspberry Pi, and macOS.

1. Launch the Server Node (Master/Worker)

swiftnode serve
# Starts a secure HTTP API on port 7799

2. Form the Grid (Client)

swiftnode connect 192.168.1.100:7799
# Interactive REPL connected directly to the remote agent

🧠 Supported AI Engine Providers

SwiftNode is model-agnostic and seamlessly connects to:

  • Gemini (Google API) ✅ Default Recommended
  • OpenAI (GPT-4o, o1)
  • Grok (xAI)
  • Hugging Face (Serverless Inference API)
  • OpenRouter (Unified API for Claude, Mistral, etc.)
  • Ollama (Local execution, absolute privacy)
  • vLLM (Self-hosted high-performance execution)

🛡️ Security Posture

  • Owner Authorization — Hardware and bot requests are strictly tied to configured owner_id.
  • System Guardrails — RegEx and path validation prevent OS-level catastrophic deletion.
  • Secret Token Auth — Multi-device nodes authenticate using encrypted preshared tokens.
  • Local Vectors — Search and embedding memory stays local using SQLite.

🤝 Contributing

We welcome contributions! Please review our Contribution Guidelines before submitting pull requests.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📝 License

Distributed under the MIT License. See LICENSE for more information.


Built with 💡 & ☕ by the SwiftNode Team

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

swiftnode-4.0.0.tar.gz (38.7 kB view details)

Uploaded Source

Built Distribution

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

swiftnode-4.0.0-py3-none-any.whl (44.0 kB view details)

Uploaded Python 3

File details

Details for the file swiftnode-4.0.0.tar.gz.

File metadata

  • Download URL: swiftnode-4.0.0.tar.gz
  • Upload date:
  • Size: 38.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for swiftnode-4.0.0.tar.gz
Algorithm Hash digest
SHA256 0bcc72f33c97d4351a2550fe2ebf9e39fd7ec2874faee123e118f3b70e177299
MD5 8c989ebf4da25850c6e3cdf5a7436f95
BLAKE2b-256 0f6a982ee0f19cd68c7dccb3b3f6269b1cac7992438cac27513ca60d8f72fe64

See more details on using hashes here.

File details

Details for the file swiftnode-4.0.0-py3-none-any.whl.

File metadata

  • Download URL: swiftnode-4.0.0-py3-none-any.whl
  • Upload date:
  • Size: 44.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for swiftnode-4.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 78a08b40ef3ebdd6932e8136ec985c1db6d2c50712de8f029b85e83ecb440b8a
MD5 4d4cb6d009e9bff9f45e26d77aa56b33
BLAKE2b-256 ab46f56e6ee1654e9ea245aa7667976da28b7cb4329daf958865d7e20f596de8

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