“Agent Blackboard”可以翻译为“黑板代理”或“黑板智能体”,具体翻译可能根据上下文有所调整,但基本意思是指一个负责处理或管理黑板信息的代理或智能体
一个基于黑板模式并集成MCP的多智能体协同系统,用于软件工程任务。
概述
“Agent Blackboard”实现了一种复杂的多智能体架构,其中专门化的AI智能体通过一个共享的知识库(黑板)协作完成复杂的软件工程任务。基于经典的黑板模式,该系统能够:
- 结构化知识共享智能体通过明确界定的本体进行通信
- 专业知识(或专业技能)每个代理专注于特定的领域(文档编写、代码审查、测试等)
- 协调执行任务被分解并分配给相应的代理
- 情境智能代理通过基于嵌入的搜索访问相关知识
建筑学(或“建筑”)
该系统由三个主要组件构成:
- 黑板基于MCP的共享知识库
- 代理具备特定能力的专门问题解决者
- 协调员根据任务需求协调代理执行
特点/功能
- 🧠 表示“大脑”或“思考”的意思。 MCP集成使用模型上下文协议实现持久知识存储
- 🤖 表示机器人或机器人图标。 可扩展智能体系统易于添加新的专业代理
- 💬 A2A协议通过黑板实现的直接代理间通信
- 📚 书籍 基于嵌入的知识使用语义搜索进行上下文指导
- 📊(图表) 监控与可观测性跟踪代理性能和系统健康状况
- 🔧 翻译成中文是“扳手”或泛指“工具”。这个符号通常用来表示与工具或修理相关的事物。 工具框架代理可以使用各种工具(文件操作、代码分析等)
- 🎯(靶心) DDD工作流完成子域分解并自动生成RFC文档 ⭐ 新功能
快速入门
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())尝试完整的DDD(领域驱动设计)工作流程 ⭐
体验多智能体协作的全部力量:
# 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_lending这个工作流程执行:
- ✅ 战略性领域驱动设计(DDD)分析(领域愿景、限界上下文、上下文映射)
- ✅ 战术性领域驱动设计(DDD)的实现(聚合根、领域事件、仓储)
- ✅ 服务文档生成
- ✅ 创建全面的RFC(请求评论文件)并制定实施路线图
看见 DDD_WORKFLOW_COMPLETE.md 翻译为中文是:“DDD工作流完成.md” 详情如下。
安装
# 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 .配置
快速设置(3步完成)
- 获取您的Anthropic API密钥 在 https://console.anthropic.com 上
- 创造
.env文件 在项目根目录中:
echo 'ANTHROPIC_API_KEY=sk-ant-your-actual-key-here' > .env- 测试配置:
python test_setup.py见 QUICK_SETUP.md 翻译为中文是:“快速设置指南.md” 或者 “快速配置说明.md”(具体翻译可能根据上下文有所调整,但基本意思是“快速设置/配置的文档或指南”) 如需详细的设置说明。
完整配置(可选)
创建一个 .env 包含所有设置的文件:
# 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.db见 docs/configuration.md(文件路径,可翻译为“文档/配置文件.md”或保持原样,因为文件路径在中文语境下通常直接使用) 以获取完整的配置指南。
📚 文档
快速链接
- 🚀 开始使用 - 安装、教程和入门步骤
- 📘 API 参考 - 完整的API文档
- 🧪 测试指南 - 如何测试和贡献(代码/意见等)
- ⚙️ 配置 - 设置和配置
- 💡 示例 - 可运行的代码示例
- 🤝 贡献 - 如何做出贡献
可用代理
该项目包括9个专业代理:
文档代理
从源代码生成全面的文档:
- 项目结构中的README文件
- 从代码中生成API文档
- 架构图(Mermaid)
- 从需求到用户指南
- 内联代码注释
API设计者代理
使用OpenAPI规范设计RESTful API:
- OpenAPI 3.1规范生成
- 模式设计与验证
- API最佳实践的执行
- Postman集合导出
后端架构师代理
设计可扩展的后端系统和微服务:
- 采用DDD(领域驱动设计)边界的微服务架构
- API网关模式和配置
- 事件驱动架构设计
- 弹性模式(断路器、重试、舱壁隔离)
- 缓存策略与性能优化
- 安全架构(OAuth2、JWT、RBAC)
- 可观测性设计(追踪、日志记录、指标)
- 数据访问模式和存储库设计
- 架构决策记录(ADRs)
Java Pro 代理 ⭐
精通Java 21+的开发者,熟悉现代JVM特性:
- Spring Boot 3.x 微服务生成
- Java 21 虚拟线程实现
- 带验证的REST API控制器
- JPA 实体和 Spring Data 仓库
- 使用OAuth2/JWT的Spring Security
- 综合测试生成(JUnit 5,Testcontainers)
- JVM性能优化
- GraalVM Native Image 编译
- Resilience4j 模式(断路器、重试)
- Java代码审查及最佳实践
Golang Pro Agent ⭐ 新功能
具备1.21+版本Go语言开发经验的专家级开发者,熟悉现代开发模式及云原生技术:
- 采用整洁架构进行Go微服务开发
- 高级并发模式(goroutine、channel、工作池)
- 使用Chi/Gin/Echo框架的REST API
- 使用Protocol Buffers的gRPC服务
- 使用sqlx/GORM进行数据层设计
- 全面测试(单元测试、集成测试、基准测试、测试容器)
- 性能优化(性能分析、垃圾回收调优、基准测试)
- 中间件实现(认证、日志记录、指标收集、追踪)
- Kubernetes 部署与云原生模式
- 进行Go代码审查,关注惯用法和最佳实践
建筑师评审代理
审查架构和代码质量:
- 架构模式验证(整洁架构、领域驱动设计、微服务)
- SOLID原则检查
- 依赖分析
- 安全性和性能评估
- 架构决策记录(ADR)生成
可观测性工程师代理(或可观测性工程师工具)
实现全面可观测性:
- 监控设置(Prometheus/Grafana)
- 分布式追踪(OpenTelemetry)
- 仪表盘设计
- SLI/SLO管理
- 创建警报规则
- 日志聚合
领域驱动设计策略规划师代理
战略性的DDD(领域驱动设计)实施:
- 领域愿景定义
- 有限上下文设计
- 上下文映射
- 事件风暴引导(或:事件风暴法促进)
- 通用语言的建立
- 战略路线图制定
领域驱动设计战术家代理
战术性领域驱动设计(DDD)的实现:
- 聚合设计
- 领域模型细化
- 领域事件设计
- 仓储模式的实现
- 战术模式应用
- 领域测试策略
项目结构
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/做出贡献
欢迎贡献!请阅读我们的贡献指南并提交拉取请求。
许可证
MIT 许可证 - 详见 LICENSE 文件。
致谢
基于黑板模式,并受到现代多智能体人工智能架构的启发。
