该项目使用 LangGraph 实现了一个多代理系统,创建了一个“DevOps 副驾”。该系统由一个主管代理组成,它将任务分配给专门负责规划、绘图和 Terraform 操作的代理。
要详细了解实现过程,请参阅我的 Substack 文章:使用 LangGraph 构建 DevOps 副驾。
在开始之前,请确保已安装以下内容:
按照以下步骤设置并运行本地项目。
git clone git@github.com:blissfulldev/devops-agent.git
cd DevOps-Platform
# 创建并激活虚拟环境
python3 -m venv venv
source venv/bin/activate
# 导航到应用目录并安装依赖项
cd devops-app
pip install poetry
poetry install
从示例模板创建一个 .env 文件,并添加您的 API 密钥。
# 确保您位于 `devops-app` 目录中
cp env.example .env
现在,打开 .env 文件并添加必要的密钥(例如 GOOGLE_API_KEY)。
应用程序由多个服务组成,必须同时运行。强烈建议为每个步骤打开一个新的终端并在运行任何命令前激活 venv。
这些服务器为每个代理提供了专用工具。
核心 MCP 服务器:
cd devops-app/mcp/core-mcp-server/
poetry install
python -m awslabs.core-mcp-server.server --transport streamable-http --host 0.0.0.0 --port 8000
绘图 MCP 服务器:
cd devops-app/mcp/aws-diagram-mcp-server/
poetry install
python -m awslabs.aws-diagram-mcp-server.server --transport streamable-http --host 0.0.0.0 --port 8001
Terraform MCP 服务器:
cd devops-app/mcp/terraform-mcp-server/
poetry install
python -m awslabs.terraform-mcp-server.server --transport streamable-http --host 0.0.0.0 --port 8002
此服务器协调代理并提供流式 API。
# 在 `devops-app` 目录中
poetry run uvicorn server:app --host 0.0.0.0 --port 8080 --reload
这是与副驾交互的用户界面。
# 在 `devops-app` 目录中
streamlit run app.py
现在,您可以在 http://localhost:8501 访问聊天界面。