biheto/DevAgent-Studio

GitHub: biheto/DevAgent-Studio

这是一个基于 LangGraph 编排的多 Agent 软件研发治理工作站,提供项目分析、代码审查、可视化工作流及 LLM 成本与质量治理能力。

Stars: 22 | Forks: 0

# DevAgent Studio **DevAgent Studio** 是一个面向软件项目理解与研发治理的多 Agent 工作台。项目基于 **FastAPI + LangGraph + React**,用于编排项目分析、代码审查、RAG 知识加工、学习陪练、MCP 工具、可视化 Workflow、人工审核、LLM 治理和 Benchmark 评测。 **DevAgent Studio** 是一个面向软件项目理解与研发治理的多 Agent 工作台。项目基于 **FastAPI + LangGraph + React**,用于编排项目分析、代码审查、RAG 知识加工、学习陪练、MCP 工具、可视化 Workflow、人工审核、LLM 治理和 Benchmark 评测。 ## 预览 ### 运行工作台 ![运行工作台](https://static.pigsec.cn/wp-content/uploads/repos/cas/83/836073841c91f98b1f8c779cc4222b9a5025a647c6aef4e7b59c3c2a51ca6362.png) ### 可视化 Workflow ![Visual Workflow](https://static.pigsec.cn/wp-content/uploads/repos/cas/d5/d5f8e58760653c0a4b88f0c605a7aad4c4f2f85bf0f758e4c6fa49dfdd5887e8.png) ### 项目追问 ![Interactive Chat](https://static.pigsec.cn/wp-content/uploads/repos/cas/d1/d12ea05dc3cd7b2ba9c5bfc33404b86084286f1c8737affe5aa5a4752f08ccba.png) ### LLM 控制台 ![LLM Console](https://static.pigsec.cn/wp-content/uploads/repos/cas/b0/b007c22edd06a6bcc78fc4990382e6e225f2d58196d7ba991c8a8ee1c9cfc4f1.png) ### MCP 管理台 ![MCP Console](https://static.pigsec.cn/wp-content/uploads/repos/cas/70/70c796d357e5ef6032175ed4df5949ac41068427240365363ca7f7e385cf2712.png) ### Benchmark 评测面板 ![Benchmark Dashboard](https://static.pigsec.cn/wp-content/uploads/repos/cas/24/24ef6cc87974ce2dfca4343548fbfd4cdafa25807929a4ef72ca69931e2a9076.png) ### 架构图 ![Architecture](https://static.pigsec.cn/wp-content/uploads/repos/cas/76/764bd5438fd7ac91f1a5d9b33f5a39351020cad1ef2759028e084732300632f1.png) ## 项目亮点 - **LangGraph 编排**:项目分析器、代码审查器、RAG 处理器、监督器、报告器和协作图。 - **可视化 Workflow 执行**:将拖拽式 Workflow 画布编译为可执行的 LangGraph Workflow。 - **Harness Runtime**:具备任务事件、artifacts、持久化和审查流程的确定性 runtime 包装器。 - **LLM 治理**:prompt 版本、LLM 调用 trace、token/cost 看板、prompt A/B 测试和按 Agent 划分的模型配置。 - **RAG 持久化**:默认通过 SQLite 进行关键词检索,可选 PostgreSQL + pgvector 语义检索。 - **真实 MCP 客户端**:stdio MCP Server 配置、工具发现、审批、启用/禁用、调用日志和 Workflow 工具节点。 - **Benchmark 套件**:MCP、LLM、RAG、Workflow 和多 Agent 协作 benchmark 运行器。 - **人工审核(Human-in-the-loop)**:节点级审核、批准/拒绝、恢复可视化和治理建议。 中文概览: - **LangGraph 编排**:项目分析、代码审查、RAG 加工、监督、报告和多 Agent 协作。 - **可视化 Workflow**:拖拽画布可以编译为真实 LangGraph 工作流执行。 - **Harness Runtime**:统一任务运行、事件、产物、持久化和人工审核流程。 - **LLM 治理**:Prompt 版本、调用 Trace、token/cost 看板、A/B Test、不同 Agent 模型配置。 - **RAG 持久化**:默认 SQLite 关键词检索,可切换 PostgreSQL + pgvector 向量检索。 - **真实 MCP Client**:MCP Server 配置、Discover、审批、启停、调用日志和 Workflow Tool 节点。 - **Benchmark 体系**:覆盖 MCP、LLM、RAG、Workflow、多 Agent 协作评测。 - **人工审核闭环**:节点级审核、拒绝/通过、resume 可视化和治理建议。 ## 能做什么 | 领域 | 能力 | API / UI | | --- | --- | --- | | 项目分析 | 扫描结构、技术栈、模块、风险、建议 | `POST /api/v1/projects/analyze` | | 代码审查 | 规则 + 调用链 + 语义审查,建议,测试思路 | `POST /api/v1/code/review` | | RAG 知识 | 处理、摄取、检索和保存项目笔记 | `/api/v1/rag/*` | | 学习陪练 | 生成学习计划和交互式后续问题 | `/api/v1/learning/*` | | Workflow | 将可视化 Workflow JSON 编译为 LangGraph 执行 | `/api/v1/workflows/*` | | 协作 | 运行 planner、analyzer、reviewer、RAG、supervisor、reporter | `/api/v1/tasks/collaborate` | | LLM 控制台 | Trace 调用,管理 prompt,比较 prompt 版本 | UI: `LLM` | | MCP 管理台 | 注册 MCP server,发现工具,批准调用,查看日志 | UI: `MCP` | | Benchmark | 评估 MCP、LLM、RAG、Workflow、协作质量 | UI: `Bench` | ## 核心组件 DevAgent Studio 按“可复用能力 + 可治理运行时 + 可编排图”的方式组织。Agent 不只是 prompt 封装,每个能力都通过 Skill 暴露,再由 Harness Runtime 统一执行,最后交给 LangGraph 工作流编排。 DevAgent Studio 按“可复用能力 + 可治理运行时 + 可编排图”的方式组织。Agent 不只是 prompt 封装,每个能力都通过 Skill 暴露,再由 Harness Runtime 统一执行,最后交给 LangGraph 工作流编排。 | 组件 | 角色 | 实现 | | --- | --- | --- | | Skill | 封装可复用的 Agent 能力,例如代码审查、RAG 处理、学习陪练或 Workflow 执行。 | `app/skills/base.py`, `app/skills/builtin.py`, `app/skills/registry.py` | | Harness Runtime | 为 Skill 和 Agent 增加确定性执行控制,包括任务上下文、事件发射、artifacts、策略检查和人工审核状态。 | `app/harness/runtime.py`, `app/harness/context.py`, `app/harness/events.py`, `app/harness/policy.py` | | LangGraph Workflow | 将 Skill、Agent、工具、审核节点和报告节点组合成可执行的图。 | `app/graphs/studio_graphs.py`, `app/graphs/workflow_compiler.py` | | Providers | 通过稳定的 provider 接口连接外部能力,如 LLM、MCP 工具和 RAG 存储。 | `app/providers/`, `app/persistence/` | 典型执行流程: ``` User task -> FastAPI task API -> Harness Runtime creates execution context -> Skill or LangGraph node runs deterministic/LLM/tool logic -> events, artifacts, traces and review state are persisted -> Reporter produces final governance report ``` 典型执行链路: ``` 用户任务 -> FastAPI 任务接口 -> Harness Runtime 创建执行上下文 -> Skill 或 LangGraph 节点运行规则、LLM 或工具逻辑 -> 持久化事件、产物、Trace 和人工审核状态 -> Reporter 生成最终治理报告 ``` ## 快速启动 ### 1. 克隆项目 ``` git clone https://github.com/biheto/DevAgent-Studio.git cd DevAgent-Studio ``` ### 2. 创建 Python 环境 推荐使用 Python 3.11+。当前的本地设置也支持 Python 3.13。 推荐 Python 3.11+,当前项目也可以在 Python 3.13 下运行。 ``` python -m venv .venv .\.venv\Scripts\activate pip install -e . ``` 可选的额外依赖: ``` # LLM 支持 pip install -e ".[llm]" # pgvector RAG 支持 pip install -e ".[vector]" # 开发工具 pip install -e ".[dev]" ``` ### 3. 安装前端依赖 ``` cd web npm install npm run build cd .. ``` ### 4. 启动后端 ``` .\.venv\Scripts\python.exe -m uvicorn app.main:app --host 127.0.0.1 --port 8100 ``` 打开: ``` http://127.0.0.1:8100/ http://127.0.0.1:8100/docs ``` ### Windows 一键启动 ``` powershell.exe -ExecutionPolicy Bypass -File .\setup-and-start.ps1 ``` 该脚本会安装依赖、构建前端,并在 `8100` 端口启动后端。 该脚本会安装依赖、构建前端,并在 `8100` 端口启动后端。 ## 配置 复制示例环境文件: 复制示例配置: ``` copy .env.example .env ``` ### LLM 没有 API Key 时,系统仍会以 fallback 模式运行。配置 API Key 后,Planner、Reporter、Supervisor、代码审查、学习陪练、任务问答和 Benchmark 可以使用真实的 LLM 调用。 没有 API Key 时系统会走 fallback;配置 API Key 后,Planner、Reporter、Supervisor、代码审查、学习陪练、任务追问和 Benchmark 会调用真实 LLM。 ``` OPENAI_API_KEY=your_api_key OPENAI_BASE_URL= DEV_AGENT_LLM_MODEL=gpt-4o-mini ``` 按 Agent 划分的模型覆盖: ``` DEV_AGENT_LLM_MODEL_PLANNER=gpt-4o-mini DEV_AGENT_LLM_MODEL_REPORTER=gpt-4o-mini DEV_AGENT_LLM_MODEL_CODE_REVIEWER=gpt-4o-mini ``` ### RAG 存储 默认: ``` DEV_AGENT_RAG_STORE=sqlite ``` pgvector: ``` DEV_AGENT_RAG_STORE=pgvector PGVECTOR_DATABASE_URL=postgresql://postgres:postgres@localhost:5432/dev_agent_studio ``` 启动 pgvector: ``` docker compose -f docker-compose.pgvector.yml up -d ``` ### MCP Provider 本地确定性 provider: ``` DEV_AGENT_MCP_PROVIDER=local ``` 真实 MCP provider: ``` DEV_AGENT_MCP_PROVIDER=mcp ``` 内置 stdio MCP 示例: ``` scripts/launch_mcp_filesystem.py scripts/launch_mcp_memory.py scripts/fake_mcp_server.py ``` ## Benchmark / 评测体系 DevAgent Studio 包含一个内部 Benchmark 套件。 DevAgent Studio 内置 Benchmark 评测体系。 | Benchmark | 评估内容 | 关键指标 | | --- | --- | --- | | MCP Benchmark | 工具稳定性和审批正确性 | 成功率、延迟、P95、失败次数 | | LLM Benchmark | Prompt/模型响应质量 | 质量分数、tokens、预估成本、fallback | | RAG Benchmark | 检索质量 | 命中率、来源质量、结果数量 | | Workflow Benchmark | Workflow 运行时可靠性 | 成功率、失败节点、延迟 | | Collaboration Benchmark | 多 Agent 报告质量 | 完整性、风险评分、触发人工审核 | API 示例: ``` POST /api/v1/benchmarks/mcp/run POST /api/v1/benchmarks/llm/run POST /api/v1/benchmarks/rag/run POST /api/v1/benchmarks/workflow/run POST /api/v1/benchmarks/collaboration/run GET /api/v1/benchmarks GET /api/v1/benchmarks/{run_id} ``` P95 表示第 95 百分位的延迟。它非常有用,因为平均延迟可能会掩盖长尾的慢速运行。 P95 表示 95 分位延迟,比平均值更能反映长尾慢请求。 ## 项目结构 ``` DevAgent Studio/ app/ agents/ # Project, code review, RAG, learning, workflow helpers api/ # FastAPI routes graphs/ # LangGraph workflows and workflow compiler harness/ # Runtime context, events, policy, execution wrapper persistence/ # SQLite task store and RAG stores providers/ # LLM and MCP providers schemas/ # Pydantic schemas skills/ # Skill abstraction and registry benchmark_runner.py # MCP/LLM/RAG/Workflow/Collaboration benchmarks main.py # FastAPI app entry web/ src/ # React workbench package.json scripts/ # MCP server launchers and fake MCP server docs/ # Design docs and implementation timeline examples/ # Example API payloads docker-compose.pgvector.yml pyproject.toml README.md ``` ## 主要页面 - **Run**:运行 Agent、Planner、Workflow、Tool、Knowledge 或协作模式。 - **Workflow**:拖拽并编排 Workflow 节点,进行验证和执行。 - **Reports**:最终报告、治理建议、Mermaid 图。 - **Chat**:任务问答、知识库查询、学习陪练。 - **History**:回放任务记录和 artifacts。 - **LLM**:trace、prompt 版本、token/cost 看板、A/B 测试。 - **MCP**:Server 配置、工具发现、审批、测试调用日志。 - **Bench**:MCP/LLM/RAG/Workflow/协作 Benchmark 看板。 中文: - **Run**:运行 Agent、Planner、Workflow、Tool、Knowledge、Collaboration 模式。 - **Workflow**:拖拽编排节点,校验并执行。 - **Reports**:查看最终报告、治理建议和 Mermaid 图。 - **Chat**:任务追问、知识库问答、学习陪练。 - **History**:历史任务回放。 - **LLM**:Trace、Prompt 版本、token/cost、A/B Test。 - **MCP**:Server 配置、工具发现、审批和调用日志。 - **Bench**:MCP、LLM、RAG、Workflow、多 Agent 协作评测。 ## 示例请求 ``` curl -X POST "http://127.0.0.1:8100/api/v1/tasks/run" ` -H "Content-Type: application/json" ` -d '{ "goal": "Analyze this project and provide governance suggestions", "project_path": "D:/Java/project/Project/AI Agent/DevAgent Studio", "max_files": 100, "require_human_review": true, "execution_mode": "planner" }' ``` ## 开发验证 ``` # 后端导入/编译检查 .\.venv\Scripts\python.exe -m compileall -q app # 前端构建 cd web npm run build ``` ## 实现时间线 参见: - [实现时间线](docs/IMPLEMENTATION_TIMELINE.md) - [Workflow 生产环境说明](docs/PHASE_8_WORKFLOW_PRODUCTION.md) ## 后续计划 - 重写并扩展自动化测试。 - 添加 Benchmark 数据集管理和 Benchmark 报告导出。 - 改进 Workflow 输入/输出映射和条件分支 UI。 - 为高风险的 MCP 工具添加更丰富的权限控制。 - 添加来自真实演示会话的截图/GIF。 - 改进关于部署和生产环境加固的文档。 ## 许可证 本项目基于 [MIT License](LICENSE) 授权。 版权所有 (c) 2026 biheto。如果你使用、修改或分发本项目, 请保留原始版权声明和许可证文本。 本项目使用 [MIT License](LICENSE) 开源。你可以使用、修改和分发本项目, 但需要保留原始版权声明和许可证文本。 ## 引用说明 如果本项目对你的研究、学习或工程实践有帮助,我们非常感谢你能标明来源: ``` DevAgent Studio by biheto https://github.com/biheto/DevAgent-Studio ``` 如果本项目对你的研究、学习或工程实践有帮助,欢迎在相关文档、项目说明或引用中注明来源: ``` DevAgent Studio by biheto https://github.com/biheto/DevAgent-Studio ```
标签:LangGraph, LLM治理, RAG, SOC Prime, 代码审查, 可视化工作流, 多智能体, 开发工具, 测试用例, 研发治理, 逆向工具