Skip to main content

OpenMAS: Easily Build Smart Multi-Agent Systems

Project description

OpenMAS

PyPI version Python Version License: MIT Poetry Code style: black CI/CD codecov

Easily Build Smart Multi-Agent Systems

OpenMAS streamlines asynchronous Multi-Agent System (MAS) development in Python. By providing a lightweight framework, standardized structure, and helpful CLI tools, it handles the foundational setup, freeing you to concentrate on what matters most: designing and implementing sophisticated agent behaviors.

Inspired by modern development ecosystems and driven by real-world use cases like coding and gaming agents, OpenMAS aims to streamline the entire MAS lifecycle, with particular attention to integrating communication protocols like the Model Context Protocol (MCP) alongside standard web protocols.

Full Documentation: https://docs.openmas.ai

Key Features

  • Simplified Agent Development: Build agents inheriting from BaseAgent with a clear asynchronous lifecycle (setup, run, shutdown).
  • Flexible Communication: Pluggable communicators for HTTP, Model Context Protocol (SSE & Stdio), gRPC, MQTT, with lazy loading to keep dependencies minimal. Easily extend with custom communicators. See Communication.
  • Structured Projects: Standardized directory layout (agents/, shared/, extensions/, packages/) generated by openmas init promotes modularity and maintainability. See Project Structure.
  • Layered Configuration: Robust system loading configuration from files (openmas_project.yml, config/*.yml), .env, and environment variables. See Configuration Guide.
  • Agent Reasoning Agnosticism: While BaseAgent inherently supports heuristic-based logic, OpenMAS facilitates integrating diverse reasoning mechanisms. Follow guides for LLM Integration (using official LLM client libraries like OpenAI, Anthropic, Google Gemini) or explore built-in support for BDI Patterns (including BdiAgent and SPADE-BDI integration examples).
  • Workflow Implementation: Implement various agent interaction patterns (see Building Effective Agents). While specific helpers exist for the Orchestrator-Worker pattern, the core framework enables building custom workflows like prompt chaining, routing, and parallel execution, with more helpers planned for future releases. See Agent Patterns.
  • Developer Workflow Tools: Use the openmas CLI tool for initializing projects (openmas init), validating configuration (openmas validate), running agents locally (openmas run), managing dependencies (openmas deps), and generating deployment artifacts (openmas generate-dockerfile, openmas generate-compose). See CLI Docs.
  • Extensibility: Design encourages local project extensions (extensions/) and shareable external packages (packages/).
  • Testing Utilities: Includes MockCommunicator and AgentTestHarness to facilitate unit and integration testing. See Testing Your Agents.

Installation

pip install openmas

OpenMAS has optional extras for different communication protocols ([mcp], [grpc], [mqtt], [all]).

See the full Installation Guide for details on prerequisites, virtual environments, and optional dependencies.

Quick Start

The best way to get started with OpenMAS is by following our detailed tutorial, which guides you through creating and running your first agent using the standard project structure:

This guide uses the openmas init command to set up a project with the proper directory structure and openmas run to execute the agent.

Contributing

Contributions are welcome! Please see the Contributing Guide for details on how to get involved, set up your development environment, run tests (tox), and submit pull requests.

License

OpenMAS is licensed under the 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

openmas-0.1.2.tar.gz (116.1 kB view details)

Uploaded Source

Built Distribution

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

openmas-0.1.2-py3-none-any.whl (150.1 kB view details)

Uploaded Python 3

File details

Details for the file openmas-0.1.2.tar.gz.

File metadata

  • Download URL: openmas-0.1.2.tar.gz
  • Upload date:
  • Size: 116.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.10.17 Linux/6.11.0-1012-azure

File hashes

Hashes for openmas-0.1.2.tar.gz
Algorithm Hash digest
SHA256 a06b965e50de8d56f5c29afbd3bd56b8c4fc6c0acf9873a850817be764cf6138
MD5 8395385d92c0e7de0a5a5e575c71db73
BLAKE2b-256 648a0de6e435008ae276c7e52091f490c32e3d23d0b6b6257a3bca6dd442f180

See more details on using hashes here.

File details

Details for the file openmas-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: openmas-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 150.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.10.17 Linux/6.11.0-1012-azure

File hashes

Hashes for openmas-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7002fc1b3cfa8faa5757724e6987a9e3eaf8c0d2b429b62c3ad6fe138f7b999e
MD5 83c3fc5d21a3f0b22af9f3d4e6cc71a4
BLAKE2b-256 ccdb403fdb906bbd6688b7b5bc58bddd378476d348afe9fc3ea3b989c30b8b95

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