Overview
swarms-rs is the first-ever enterprise-grade, production-ready multi-agent orchestration framework built in Rust, designed to handle the most demanding tasks with unparalleled speed and efficiency. By leveraging Rust's cutting-edge performance and safety features, swarms-rs provides a powerful and scalable solution for orchestrating complex multi-agent systems across various industries.
π Available Languages
Key Benefits
| Feature | Description |
|---|---|
| Extreme Performance | Utilize the full potential of modern multi-core processors with Rust's zero-cost abstractions and fearless concurrency. Swarms-rs ensures that your agents run with minimal overhead, achieving maximum throughput and efficiency. |
| Bleeding-Edge Speed | Written in Rust, swarms-rs delivers near-zero latency and lightning-fast execution, making it the ideal choice for high-frequency and real-time applications. |
| Enterprise-Grade Reliability | Rust's ownership model guarantees memory safety without the need for a garbage collector, ensuring that your multi-agent systems are free from data races and memory leaks. |
| Production-Ready | Designed for real-world deployment, swarms-rs is ready to handle mission-critical tasks with robustness and reliability that you can depend on. |
| Powerful Orchestration | Seamlessly manage and coordinate thousands of agents, allowing them to communicate and collaborate efficiently to achieve complex goals. |
| Extensible and Modular | Swarms-rs is highly modular, allowing developers to easily extend and customize the framework to suit specific use cases. |
| Scalable and Efficient | Whether you're orchestrating a handful of agents or scaling up to millions, swarms-rs is designed to grow with your needs, maintaining top-tier performance at every level. |
| Resource Efficiency | Maximize the use of system resources with Rust's fine-grained control over memory and processing power, ensuring that your agents run optimally even under heavy loads. |
Getting Started
Prerequisites
- Rust (latest stable version recommended)
- Cargo package manager
- An API key for your LLM provider (OpenAI, DeepSeek, Anthropic etc.)
Installation
# Add the latest version to your project
Environment Setup
Create a .env file in your project root with your API credentials:
OPENAI_API_KEY=your_openai_key_here
OPENAI_BASE_URL=https://api.openai.com/v1
# Or for DeepSeek
DEEPSEEK_API_KEY=your_deepseek_key_here
DEEPSEEK_BASE_URL=https://api.deepseek.com/v1
Quickstart
Agents
An agent is an entity powered by an LLM equipped with tools and memory that can run autonomously to automate issues. Here's an example:
use env;
use Result;
use ;
use ;
async
MCP Tool Support
swarms-rs supports the Model Context Protocol (MCP), enabling agents to interact with external tools through standardized interfaces. This powerful feature allows your agents to access real-world data and perform actions beyond their language capabilities.
Supported MCP Server Types
- STDIO MCP Servers: Connect to command-line tools that implement the MCP protocol
- SSE MCP Servers: Connect to web-based MCP servers using Server-Sent Events
Example Usage
// Add a STDIO MCP server
.add_stdio_mcp_server
.await
// Add an SSE MCP server
.add_sse_mcp_server
.await
Full MCP Agent Example
use env;
use Result;
use ;
use ;
async
See the mcp_tool.rs example for a complete implementation.
Multi-Agent Architectures
ConcurrentWorkflow
This is an example of utilizing the ConcurrentWorkflow to concurrently execute multiple agents at the same time
use env;
use Result;
use OpenAI;
use ConcurrentWorkflow;
async
Run Examples
In swarms-rs/examples there is our sample code, which can provide a considerable degree of reference:
To run the graph workflow example:
DEEPSEEK_API_KEY and DEEPSEEK_BASE_URL environment variables are read by default.
Framework Architecture
In swarms-rs, we modularize the framework into three primary architectural stages, each building upon the previous to create increasingly sophisticated agent systems:
graph TD
A[Framework Architecture] --> B[1. Agent Layer]
A --> C[2. Multi-Agent Structures]
A --> D[3. Cascading Systems]
B --> B1[LLM Integration]
B --> B2[Tool System]
B --> B3[Memory Management]
C --> C1[Sequential Workflow]
C --> C2[Concurrent Workflow]
C --> C3[Communication Protocols]
D --> D1[Agent Networks]
D --> D2[Hierarchical Systems]
D --> D3[Swarm Intelligence]
Features
| Agents (LLM + Tools + Memory) | |
|---|---|
| Language Models | Integration with various LLM providers (OpenAI, DeepSeek, etc.) |
| Tool System | Extensible framework for adding capabilities through MCP and custom tools |
| Memory Management | Short-term and long-term memory systems for maintaining context |
| State Management | Handling agent state, configuration, and runtime parameters |
| Multi-Agent Structures and Communication | |
|---|---|
| Sequential Workflows | Linear progression of tasks between multiple agents |
| Concurrent Workflows | Parallel execution of tasks across multiple agents |
| Communication Protocols | Standardized methods for inter-agent communication |
| Task Distribution | Intelligent distribution of workload across agent networks |
| Synchronization | Mechanisms for coordinating agent activities and sharing results |
| Cascading Multi-Agent Systems | |
|---|---|
| Hierarchical Organizations | Multi-level agent structures with specialized roles |
| Swarm Intelligence | Emergent behavior from large-scale agent interactions |
| Dynamic Scaling | Ability to scale agent networks based on workload |
| Fault Tolerance | Robust error handling and system recovery |
| Resource Optimization | Efficient allocation and utilization of system resources |
This modular architecture allows for flexible deployment scenarios, from simple single-agent applications to complex, distributed multi-agent systems. Each layer is designed to be extensible, allowing developers to customize and enhance functionality while maintaining the core benefits of the framework's enterprise-grade reliability and performance.
Architecture
swarms-rs is built with a modular architecture that allows for easy extension and customization:
| Layer/Component | Description |
|---|---|
| Agent Layer | Core agent implementation with memory management and tool integration |
| LLM Provider Layer | Abstraction for different LLM providers (OpenAI, DeepSeek, etc.) |
| Tool System | Extensible tool framework for adding capabilities to agents |
| MCP Integration | Support for Model Context Protocol tools via STDIO and SSE interfaces |
| Swarm Orchestration | Coordination of multiple agents for complex workflows |
| Persistence Layer | State management and recovery mechanisms |
Development Setup
-
Clone the repository:
-
Install development dependencies:
-
Run tests:
-
Run benchmarks:
Community
Join our growing community around the world for real-time support, ideas, and discussions on Swarms π
Connect With Us
| Platform | Link | Description |
|---|---|---|
| π Documentation | docs.swarms.world | Official documentation and guides |
| π Blog | Medium | Latest updates and technical articles |
| π¬ Discord | Join Discord | Live chat and community support |
| π¦ Twitter | @kyegomez | Latest news and announcements |
| π₯ LinkedIn | The Swarm Corporation | Professional network and updates |
| πΊ YouTube | Swarms Channel | Tutorials and demos |
| π« Events | Sign up here | Join our community events |
Contributing
We welcome contributions from the community! Whether you're fixing bugs, improving documentation, or adding new features, your help is valuable. Here's how you can contribute:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
For more details, please read our Contributing Guidelines.
Join Our Discord
Join our Discord community to:
- Get real-time support
- Share your ideas and feedback
- Connect with other developers
- Stay updated on the latest features
- Participate in community events
We're excited to have you join our growing community! π
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contact
For questions, suggestions, or feedback, please open an issue or contact us at kye@swarms.world.