A multi-agent coordination system for software engineering tasks using the Blackboard Pattern with MCP integration.
Agent Blackboard implements a sophisticated multi-agent architecture where specialized AI agents collaborate on complex software engineering tasks through a shared knowledge repository (blackboard). Based on the classic Blackboard Pattern, this system enables:
- Structured Knowledge Sharing: Agents communicate through a well-defined ontology
- Specialized Expertise: Each agent focuses on specific domains (documentation, code review, testing, etc.)
- Coordinated Execution: Tasks are decomposed and distributed to appropriate agents
- Contextual Intelligence: Agents access relevant knowledge through embedding-based search
The system consists of three main components:
- Blackboard: MCP-based shared knowledge repository
- Agents: Specialized problem-solvers with specific capabilities
- Coordinator: Orchestrates agent execution based on task requirements
- π§ MCP Integration: Persistent knowledge storage using Model Context Protocol
- π€ Extensible Agent System: Easy to add new specialized agents
- π¬ A2A Protocol: Direct agent-to-agent communication via the blackboard
- π Embedding-based Knowledge: Contextual guidance using semantic search
- π Monitoring & Observability: Track agent performance and system health
- π§ Tool Framework: Agents can use various tools (file ops, code analysis, etc.)
- π― DDD Workflow: Complete subdomain decomposition with automated RFC generation β NEW
import asyncio
from agent_blackboard import Blackboard, Coordinator
from agent_blackboard.agents import DocumentationAgent
async def main():
# Initialize blackboard
blackboard = Blackboard()
await blackboard.initialize()
# Create coordinator
coordinator = Coordinator(blackboard)
# Register documentation agent
doc_agent = DocumentationAgent(
agent_id="doc_agent_1",
blackboard=blackboard
)
coordinator.register_agent(doc_agent)
# Execute documentation task
task = {
"type": "generate_documentation",
"scope": "api",
"source_files": ["src/agent_blackboard/core/"],
"output_format": "markdown"
}
result = await coordinator.execute_task(task)
print(f"Documentation generated: {result['output_path']}")
asyncio.run(main())Experience the full power of multi-agent collaboration:
# Run complete DDD subdomain decomposition
python examples/run_ddd_workflow.py
# Try different sample subdomains
python examples/run_ddd_workflow.py healthcare_scheduling
python examples/run_ddd_workflow.py fintech_lendingThis workflow performs:
- β Strategic DDD analysis (domain vision, bounded contexts, context mapping)
- β Tactical DDD implementation (aggregates, domain events, repositories)
- β Service documentation generation
- β Comprehensive RFC creation with implementation roadmap
See DDD_WORKFLOW_COMPLETE.md for details.
# Clone the repository
git clone https://github.com/yourusername/agent-blackboard.git
cd agent-blackboard
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -e .- Get your Anthropic API key at https://console.anthropic.com
- Create
.envfile in project root:echo 'ANTHROPIC_API_KEY=sk-ant-your-actual-key-here' > .env
- Test configuration:
python test_setup.py
See QUICK_SETUP.md for detailed setup instructions.
Create a .env file with all settings:
# Required
ANTHROPIC_API_KEY=sk-ant-...
# Optional
MCP_MEMORY_SERVER_PATH=./mcp_servers/memory
EMBEDDING_MODEL=all-MiniLM-L6-v2
LOG_LEVEL=INFO
BLACKBOARD_PERSISTENCE=sqlite
BLACKBOARD_DB_PATH=./data/blackboard.dbSee docs/configuration.md for complete configuration guide.
π Complete Documentation Index
- π Getting Started - Installation, tutorials, and first steps
- π API Reference - Complete API documentation
- π§ͺ Testing Guide - How to test and contribute
- βοΈ Configuration - Setup and configuration
- π‘ Examples - Working code examples
- π€ Contributing - How to contribute
The project includes 9 specialized agents:
Generates comprehensive documentation from source code:
- README files from project structure
- API documentation from code
- Architecture diagrams (Mermaid)
- User guides from requirements
- Inline code comments
Designs RESTful APIs with OpenAPI specifications:
- OpenAPI 3.1 spec generation
- Schema design and validation
- API best practices enforcement
- Postman collection export
Designs scalable backend systems and microservices:
- Microservices architecture with DDD boundaries
- API Gateway patterns and configuration
- Event-driven architecture design
- Resilience patterns (circuit breakers, retries, bulkheads)
- Caching strategies and performance optimization
- Security architecture (OAuth2, JWT, RBAC)
- Observability design (tracing, logging, metrics)
- Data access patterns and repository design
- Architectural Decision Records (ADRs)
Expert Java 21+ developer with modern JVM features:
- Spring Boot 3.x microservice generation
- Java 21 virtual threads implementation
- REST API controllers with validation
- JPA entities and Spring Data repositories
- Spring Security with OAuth2/JWT
- Comprehensive test generation (JUnit 5, Testcontainers)
- JVM performance optimization
- GraalVM Native Image compilation
- Resilience4j patterns (Circuit Breaker, Retry)
- Java code review and best practices
Expert Go 1.21+ developer with modern patterns and cloud-native expertise:
- Go microservice generation with clean architecture
- Advanced concurrency patterns (goroutines, channels, worker pools)
- REST APIs with Chi/Gin/Echo frameworks
- gRPC services with Protocol Buffers
- Data layer design with sqlx/GORM
- Comprehensive testing (unit, integration, benchmarks, testcontainers)
- Performance optimization (profiling, GC tuning, benchmarking)
- Middleware implementation (auth, logging, metrics, tracing)
- Kubernetes deployment and cloud-native patterns
- Go code review for idioms and best practices
Reviews architecture and code quality:
- Architecture pattern validation (Clean Architecture, DDD, Microservices)
- SOLID principles checking
- Dependency analysis
- Security and performance reviews
- ADR (Architecture Decision Records) generation
Implements comprehensive observability:
- Monitoring setup (Prometheus/Grafana)
- Distributed tracing (OpenTelemetry)
- Dashboard design
- SLI/SLO management
- Alert rule creation
- Log aggregation
Strategic DDD implementation:
- Domain vision definition
- Bounded context design
- Context mapping
- Event storming facilitation
- Ubiquitous language establishment
- Strategic roadmap creation
Tactical DDD implementation:
- Aggregate design
- Domain model refinement
- Domain event design
- Repository pattern implementation
- Tactical pattern application
- Domain testing strategies
agent-blackboard/
βββ src/agent_blackboard/
β βββ core/ # Blackboard, ontology, coordinator
β βββ agents/ # Specialized agents
β βββ tools/ # Agent tools
β βββ monitoring/ # Metrics and logging
β βββ utils/ # Helper functions
βββ examples/ # Usage examples
βββ tests/ # Test suite
βββ docs/ # Documentation
# Install development dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Format code
black src/ tests/
# Type checking
mypy src/
# Linting
ruff check src/Contributions are welcome! Please read our contributing guidelines and submit pull requests.
MIT License - see LICENSE file for details.
Based on the Blackboard Pattern and inspired by modern multi-agent AI architectures.