{"id":30626007,"url":"https://github.com/openmas-ai/openmas","last_synced_at":"2026-03-08T21:51:11.436Z","repository":{"id":289362433,"uuid":"969530941","full_name":"openmas-ai/openmas","owner":"openmas-ai","description":"Easily Build Smart Multi-Agent Systems","archived":false,"fork":false,"pushed_at":"2025-07-28T12:34:49.000Z","size":6268,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-28T18:51:01.419Z","etag":null,"topics":["agents","ai","frameworks","multiagent-systems"],"latest_commit_sha":null,"homepage":"https://openmas.ai","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openmas-ai.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/contributing/contributing.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-04-20T11:11:44.000Z","updated_at":"2025-05-10T22:00:10.000Z","dependencies_parsed_at":"2025-05-01T00:36:09.760Z","dependency_job_id":"bfc3bab6-fd51-4d0e-82f3-a7663e88d93b","html_url":"https://github.com/openmas-ai/openmas","commit_stats":null,"previous_names":["wilson-urdaneta/simple-mas","open-mas/openmas","openmas-ai/openmas"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/openmas-ai/openmas","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openmas-ai%2Fopenmas","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openmas-ai%2Fopenmas/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openmas-ai%2Fopenmas/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openmas-ai%2Fopenmas/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openmas-ai","download_url":"https://codeload.github.com/openmas-ai/openmas/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openmas-ai%2Fopenmas/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30274852,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-08T20:45:49.896Z","status":"ssl_error","status_checked_at":"2026-03-08T20:45:49.525Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agents","ai","frameworks","multiagent-systems"],"created_at":"2025-08-30T18:25:27.908Z","updated_at":"2026-03-08T21:51:11.430Z","avatar_url":"https://github.com/openmas-ai.png","language":"Python","readme":"# ![OpenMAS](openmas.svg \"OpenMAS\") OpenMAS\n\n[![PyPI version](https://img.shields.io/pypi/v/openmas.svg)](https://pypi.org/project/openmas/)\n[![Python Version](https://img.shields.io/badge/python-3.10-blue.svg)](https://www.python.org/downloads/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![CI/CD](https://github.com/openmas-ai/openmas/actions/workflows/ci-cd.yml/badge.svg)](https://github.com/openmas-ai/openmas/actions)\n[![codecov](https://codecov.io/gh/openmas-ai/openmas/graph/badge.svg)](https://codecov.io/gh/openmas-ai/openmas)\n\n**Easily Build Smart Multi-Agent Systems**\n\n**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.\n\nInspired 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.\n\n**Full Documentation:** [**https://docs.openmas.ai**](https://docs.openmas.ai)\n\n## Key Features\n\n* **Simplified Agent Development:** Build agents inheriting from `BaseAgent` with a clear asynchronous lifecycle (`setup`, `run`, `shutdown`).\n* **Flexible Communication:** Pluggable communicators for HTTP, Model Context Protocol (SSE \u0026 Stdio), gRPC, MQTT, with **lazy loading** to keep dependencies minimal. Easily extend with custom communicators. See [Communication](https://docs.openmas.ai/guides/communication).\n* **Structured Projects:** Standardized directory layout (`agents/`, `shared/`, `extensions/`, `packages/`) generated by `openmas init` promotes modularity and maintainability. See [Project Structure](https://docs.openmas.ai/project_structure).\n* **Layered Configuration:** Robust system loading configuration from files (`openmas_project.yml`, `config/*.yml`), `.env`, and environment variables. See [Configuration Guide](https://docs.openmas.ai/guides/configuration).\n* **Prompt Management:** Comprehensive prompt management system for organizing, versioning, and reusing prompts, with storage backends and template rendering capabilities. See [Prompt Management](https://docs.openmas.ai/guides/prompt_management).\n* **Sampling Interface:** Consistent abstraction for interacting with language models, with support for sampling parameters and MCP integration. Use with any LLM provider. See [Prompt Management](https://docs.openmas.ai/guides/prompt_management).\n* **Enhanced MCP Agent:** The `PromptMcpAgent` combines prompt management, sampling, and MCP capabilities for streamlined LLM-powered agents. See [MCP Integration](https://docs.openmas.ai/guides/mcp_integration).\n* **Agent Reasoning Agnosticism:** While `BaseAgent` inherently supports heuristic-based logic, OpenMAS facilitates integrating diverse reasoning mechanisms. Follow guides for [LLM Integration](https://docs.openmas.ai/guides/llm_integration) (using official LLM client libraries like OpenAI, Anthropic, Google Gemini) or explore built-in support for [BDI Patterns](https://docs.openmas.ai/guides/reasoning_integration) (including `BdiAgent` and [SPADE-BDI](https://pypi.org/project/spade-bdi/) integration examples).\n* **Workflow Implementation:** Implement various agent interaction patterns (see [Building Effective Agents](https://www.anthropic.com/engineering/building-effective-agents)). While specific helpers exist for the [Orchestrator-Worker pattern](https://docs.openmas.ai/guides/patterns), the core framework enables building custom workflows like **prompt chaining, routing, and parallel execution**, with more helpers planned for future releases. See [Agent Patterns](https://docs.openmas.ai/guides/patterns).\n* **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](https://docs.openmas.ai/cli/index).\n* **Extensibility:** Design encourages local project extensions (`extensions/`) and shareable external packages (`packages/`).\n* **Testing Utilities:** Includes `MockCommunicator` and `AgentTestHarness` to facilitate unit and integration testing. See [Testing Your Agents](https://docs.openmas.ai/guides/testing-utilities).\n\n## Installation\n\n```bash\npip install openmas\n```\n\nOpenMAS has optional extras for different communication protocols (`[mcp]`, `[grpc]`, `[mqtt]`, `[all]`).\n\nSee the full [Installation Guide](https://docs.openmas.ai/guides/installation/) for details on prerequisites, virtual environments, and optional dependencies.\n\n## Quick Start\n\nThe 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:\n\n* [**Getting Started Guide**](https://docs.openmas.ai/guides/getting_started/)\n\nThis guide uses the `openmas init` command to set up a project with the proper directory structure and `openmas run` to execute the agent.\n\n## Contributing\n\nContributions are welcome! Please see the [Contributing Guide](https://docs.openmas.ai/contributing/contributing/) for details on how to get involved, set up your development environment, run tests (`tox`), and submit pull requests.\n\n## License\n\nOpenMAS is licensed under the [MIT License](https://github.com/openmas-ai/openmas?tab=MIT-1-ov-file).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenmas-ai%2Fopenmas","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenmas-ai%2Fopenmas","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenmas-ai%2Fopenmas/lists"}