Skip to main content

Swarm Shield - TGSC

Project description

Multi-Modality

SwarmShield 🛡️

Join our Discord Subscribe on YouTube Connect on LinkedIn Follow on X.com

PyPI version License: MIT Python Version Documentation

SwarmShield is an enterprise-grade security system for swarm-based multi-agent communications, providing military-grade encryption, secure conversation management, and comprehensive audit capabilities.

Features 🚀

  • Multi-Layer Encryption

    • AES-256-GCM encryption
    • SHA-512 hashing
    • HMAC authentication
    • Automatic key rotation
  • Secure Conversation Management

    • Encrypted persistent storage
    • Thread-safe operations
    • Conversation history tracking
    • Comprehensive audit logs
  • Enterprise Features

    • Role-based access control
    • Automated backups
    • Detailed analytics
    • Secure exports

Installation 📦

pip install swarm-shield

Quick Start 🏃‍♂️

# Usage Example
from loguru import logger
from swarm_shield.main import EncryptionStrength, SwarmShield


if __name__ == "__main__":
    try:
        # Initialize SwarmShield
        shield = SwarmShield(encryption_strength=EncryptionStrength.MAXIMUM)
        
        # Create a conversation
        conversation_id = shield.create_conversation("Test Chat")
        
        # protect message
        shield.protect_message("agent_name", "We generated 3000000k this month ")
        
        # Add messages
        shield.add_message(conversation_id, "Agent1", "Hello, Agent2!")
        shield.add_message(conversation_id, "Agent2", "Hi Agent1, how are you?")
        
        # Get message history
        print("\nConversation History:")
        for agent, message, timestamp in shield.get_messages(conversation_id):
            print(f"{timestamp} - {agent}: {message}")
            
            
        # Get conversation overview
        summary = shield.get_conversation_summary(conversation_id)
        print(f"Messages: {summary['message_count']}")
        print(f"Participants: {summary['agents']}")
                    
            
        # Export conversation
        shield.export_conversation(conversation_id, format="json", path="chat.json")

        # Backup all conversations
        backup_path = shield.backup_conversations()
                    
            
        # Get agent activity stats
        stats = shield.get_agent_stats("Agent1")
        print(f"Total messages: {stats['total_messages']}")
        print(f"Active in {stats['conversations']} conversations")
            
        # Delete conversation
        shield.delete_conversation(conversation_id)
        
    except Exception as e:
        logger.error(f"Example failed: {e}")
        raise

Security Features 🔒

Encryption Levels

# Standard: AES-256
shield = SwarmShield(encryption_strength=EncryptionStrength.STANDARD)

# Enhanced: AES-256 + SHA-512
shield = SwarmShield(encryption_strength=EncryptionStrength.ENHANCED)

# Maximum: AES-256 + SHA-512 + HMAC
shield = SwarmShield(encryption_strength=EncryptionStrength.MAXIMUM)

Key Management

  • Automatic key rotation
  • Secure key storage
  • Key versioning
  • Cryptographic separation

Message Security

  • End-to-end encryption
  • Message integrity verification
  • Replay attack prevention
  • Forward secrecy

Enterprise Features 🏢

Conversation Management

# Search conversations
results = shield.query_conversations(
    agent_name="Agent1",
    text="mission",
    start_date=datetime(2025, 1, 1),
    limit=10
)

# Export conversations
shield.export_conversation(
    conversation_id,
    format="json",
    path="mission_logs.json"
)

# Create backups
backup_path = shield.backup_conversations()

Analytics

# Get agent statistics
stats = shield.get_agent_stats("Agent1")
print(f"Total messages: {stats['total_messages']}")
print(f"Active in {stats['conversations']} conversations")

# Get conversation summary
summary = shield.get_conversation_summary(conversation_id)
print(f"Participants: {summary['agents']}")
print(f"Message count: {summary['message_count']}")

Production Best Practices 🛠️

  1. Key Rotation

    • Set appropriate rotation intervals
    • Implement backup procedures
    • Monitor rotation events
  2. Storage

    • Use secure storage paths
    • Implement backup strategy
    • Monitor storage usage
  3. Logging

    • Configure appropriate log levels
    • Secure log storage
    • Regular log analysis
  4. Error Handling

    • Implement proper error recovery
    • Monitor error rates
    • Set up alerts

Contributing 🤝

We welcome contributions! Please see our Contributing Guidelines for details.

  1. Fork the repository
  2. Create your feature branch
  3. Submit a pull request

Security 🔐

For security issues, please email security@swarms.ai rather than using issues.

Testing ✅

Run the comprehensive test suite:

python swarm_shield_tests.py

Support 💬

License 📄

MIT License - see LICENSE for details.

Creator 👨‍💻

SwarmShield is created and maintained by Kye Gomez and the team at Swarms.AI.


Made with ❤️ by Swarms.AI

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

swarm_shield-7.0.0.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

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

swarm_shield-7.0.0-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

Details for the file swarm_shield-7.0.0.tar.gz.

File metadata

  • Download URL: swarm_shield-7.0.0.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.6 Darwin/23.3.0

File hashes

Hashes for swarm_shield-7.0.0.tar.gz
Algorithm Hash digest
SHA256 936cb0cf17c38b34e2e102cc9c1fb678422d0645ea116c0fcd0aea80693f156f
MD5 27db80b6270e2432aacfaefb8e2e63a8
BLAKE2b-256 511127927fb89265d9bc6849eb33c3189b49c52135c7f6381210987b0547f0db

See more details on using hashes here.

File details

Details for the file swarm_shield-7.0.0-py3-none-any.whl.

File metadata

  • Download URL: swarm_shield-7.0.0-py3-none-any.whl
  • Upload date:
  • Size: 9.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.6 Darwin/23.3.0

File hashes

Hashes for swarm_shield-7.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c3be40fd483f365e8e05d70087adf9225cc16addbdb910c9c8bed1b27203f65a
MD5 5b0005154ffd46de09d282ddb1fc9721
BLAKE2b-256 e04260e4856f52b68c863b3faf23733b096812126a7baa122da2c29950a46985

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