ARCHON——自主存储库控制和强化操作网络
基于MCP的本地自主操作控制系统 阿奇斯特拉 🏆 为 *2快速2 MCP* WeMakeDevs黑客马拉松
Real-time command center — type any GitHub repo and watch ARCHON analyze it live
______________________________________________________________________
ARCHON是什么?
ARCHON是一个 自组织的人工智能代理群 持续监控GitHub存储库的安全漏洞、操作风险和代码质量问题,然后 自动采取行动 通过创建问题、生成报告和上报调查结果。
它展示了Archestra平台的每一项主要功能:
| Archestra功能 | ARCHON如何使用它 |
|---|---|
| MCP注册表 | 注册并管理3台自定义MCP服务器 |
| K8s编排器 | 服务器通过stdio传输作为Docker容器运行 |
| 代理授权(A2A) | 编排者委托分析子代理进行深入调查 |
| 知识图谱(GraphRAG) | 安全剧本+事件响应程序作为RAG上下文加载 |
| 双LLM安全 | 所有工具输入/输出均由Archestra安全子代理验证 |
| 旅馆观察 | 每个操作都记录了结构化的审计条目 |
| 成本控制 | 代理配置了适当的令牌限制 |
| 聊天界面 | 用户通过Archestra的ChatGPT风格界面进行交互 |
______________________________________________________________________
建筑
┌─────────────────────────────────────────────────────────────┐
│ ARCHESTRA PLATFORM │
│ │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ ARCHON ORCHESTRATOR AGENT │ │
│ │ │ │
│ │ Signal ──▶ Correlate ──▶ Decide ──▶ Act │ │
│ │ │ │ │ │ │ │
│ │ ▼ ▼ ▼ ▼ │ │
│ │ ┌──────┐ ┌──────────┐ ┌───────┐ ┌────────┐ │ │
│ │ │Gather│ │Cross-ref │ │ Risk │ │Execute │ │ │
│ │ │Signals│ │& Weight │ │Matrix │ │Actions │ │ │
│ │ └──────┘ └──────────┘ └───────┘ └────────┘ │ │
│ │ ▲ │ │ │
│ │ │ ┌──────────┘ │ │
│ │ │ ▼ (A2A delegation) │ │
│ │ │ ┌─────────────────┐ │ │
│ │ │ │ Analysis Agent │ │ │
│ │ │ │ (sub-agent) │ │ │
│ │ │ └─────────────────┘ │ │
│ └─────┼────────────────────────────────────────────────┘ │
│ │ │
│ ┌─────┴───────────────────────────────────────────┐ │
│ │ MCP SERVER LAYER │ │
│ │ │ │
│ │ ┌────────────┐ ┌───────────┐ ┌───────────┐ │ │
│ │ │ repo-intel │ │ security │ │ actions │ │ │
│ │ │ │ │ │ │ │ │ │
│ │ │• Commits │ │• CVE/NVD │ │• Issues │ │ │
│ │ │• PRs │ │• Deps │ │• Reports │ │ │
│ │ │• Health │ │• Secrets │ │• Audit Log │ │ │
│ │ │• Overview │ │• Reports │ │ │ │ │
│ │ └──────┬─────┘ └─────┬─────┘ └─────┬─────┘ │ │
│ └─────────┼─────────────┼─────────────┼──────────┘ │
│ │ │ │ │
│ ┌─────────┼─────────────┼─────────────┼──────────┐ │
│ │ ▼ ▼ ▼ │ │
│ │ ┌─────────┐ ┌──────────┐ ┌──────────┐ │ │
│ │ │ GitHub │ │ NIST NVD │ │ GitHub │ │ │
│ │ │ REST API│ │ CVE API │ │ REST API │ │ │
│ │ └─────────┘ └──────────┘ └──────────┘ │ │
│ │ EXTERNAL APIs │ │
│ └────────────────────────────────────────────────┘ │
│ │
│ ┌────────────────────────────────┐ │
│ │ KNOWLEDGE GRAPH │ │
│ │ • security-playbook.md │ │
│ │ • incident-response.md │ │
│ └────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘______________________________________________________________________
实时仪表板
ARCHON船与 实时指挥中心仪表盘 该工具在整个分析管道运行时将其可视化:
- 动画工作流管道 --信号→ 关联→ 决定→ 行动阶段实时亮起
- 健康评分环 --可自动绘制的SVG仪表,按等级进行颜色编码
- 风险卡 --实时更新的提交、PR和安全风险级别
- 流媒体调查结果提要 --CVE、秘密和风险模式在检测到时就会出现
- 行动与决策 --查看人工智能的推理和生成的报告
- 完整的Markdown报告 --浏览器中呈现的安全审计和操作状态报告
仪表板使用 服务器发送事件(SSE) 从FastAPI后端流式传输分析的每个阶段,为法官(和用户)提供可视化的“任务控制”体验。
cd dashboard && pip install -r requirements.txt && python api.py
# Open http://localhost:8501______________________________________________________________________
MCP服务器
archon-repo-intel --存储库智能
连接到 GitHub REST API 分析存储库活动模式。
| 工具 | 说明 |
|---|---|
analyze_recent_commits | 获取最近的提交,并对每个提交进行风险评分(敏感文件、大差异、模糊消息、非工作时间活动) |
analyze_pull_requests | 分析打开的PR的过期、大小、审查覆盖率和敏感文件暴露情况 |
get_repository_health | 6个维度的综合健康评分(0-100):社区、活动、问题、CI/CD、安全、贡献者 |
get_repository_overview | 存储库元数据快照(语言、大小、星号、叉号、未决问题) |
archon-security --安全扫描器
连接到 NIST国家漏洞数据库(NVD)API 并执行代码分析。
| 工具 | 说明 |
|---|---|
scan_dependencies | 解析依赖清单(pip、npm、Go、Cargo),并根据NVD检查每个包中已知的CVE |
scan_for_secrets | 12种正则表达式模式+香农熵分析,用于检测源代码中泄漏的证书 |
lookup_cve | 深入到单个CVE-CVSS得分,攻击向量,受影响的版本,参考 |
generate_security_report | 将所有发现汇总到具有严重性分布的评分风险报告中 |
archon-actions --行动执行人
通过执行补救措施 GitHub API 以及结构化报告生成。
| 工具 | 说明 |
|---|---|
create_security_issue | 为带有严重性标签的安全发现创建格式化的GitHub问题 |
create_incident_issue | 使用时间线、受影响的组件和操作复选框创建事件跟踪问题 |
generate_security_report | 生成全面的Markdown安全审计报告 |
generate_operational_report | 将所有信号合并到一个统一的操作状态文档中 |
log_action | 每个ARCHON操作的结构化审计日志条目(馈入OTEL) |
______________________________________________________________________
代理
编排器代理
驱动的主要代理 信号→ 关联→ 决定→ Act 工作流:
- 信号采集 --同时调用repo intel和安全工具
- 相关性 --交叉引用提交模式与安全发现
- 决定 --应用风险矩阵来确定严重程度和所需采取的行动
- 行动 --创建问题、生成报告、记录所有内容
分析子代理(A2A)
通过Archestra联系的专业特工 代理人之间的委托 当编排器需要更深入的分析时:
- 严重性分类和置信度评分
- 模式识别(供应链攻击、凭证暴露、配置漂移)
- 生态系统特定风险评估(npm vs pip vs Go)
- 返回结构化JSON建议
______________________________________________________________________
快速开始
先决条件
- 码头工人
- GitHub个人访问令牌(可选,用于更高的API速率限制)
一个命令设置
# Clone the repo
git clone https://github.com/your-org/archon.git
cd archon
# Set your tokens (optional but recommended)
export GITHUB_TOKEN=ghp_your_token_here
export NVD_API_KEY=your_nvd_key_here # from https://nvd.nist.gov/developers/request-an-api-key
# Run setup — starts Archestra, builds servers, registers everything
chmod +x setup.sh && ./setup.sh安装脚本的作用
- 开始Archestra 平台(Docker,端口9000+3000)
- 建筑 3个MCP服务器Docker镜像
- 寄存器 配备Archestra MCP注册表的服务器
- 上传 知识库文档到知识图谱
- 创建 具有MCP服务器和KB绑定的编排器代理
- 创建 A2A代表团的分析子代理
演示
打开Archestra聊天界面 http://localhost:3000 并尝试:
Analyze the security posture of facebook/reactARCHON将:
- 收集存储库情报(提交、PR、运行状况)
- 扫描CVE的依赖关系
- 扫描泄露的秘密代码
- 关联所有发现
- 生成安全报告和操作报告
- 为任何关键/高发现创建GitHub问题
- 记录每个操作以供审核
______________________________________________________________________
项目结构
archon/
├── mcp-servers/
│ ├── repo-intel/ # Repository intelligence MCP server
│ │ ├── server.py # FastMCP entry point (4 tools)
│ │ ├── github_client.py # Async GitHub REST API client
│ │ ├── commit_analyzer.py
│ │ ├── pr_analyzer.py
│ │ ├── health_analyzer.py
│ │ ├── requirements.txt
│ │ └── Dockerfile
│ │
│ ├── security/ # Security scanning MCP server
│ │ ├── server.py # FastMCP entry point (4 tools)
│ │ ├── nvd_client.py # NIST NVD 2.0 API client
│ │ ├── dependency_scanner.py
│ │ ├── secret_scanner.py
│ │ ├── requirements.txt
│ │ └── Dockerfile
│ │
│ └── actions/ # Action execution MCP server
│ ├── server.py # FastMCP entry point (5 tools)
│ ├── github_actions.py
│ ├── report_generator.py
│ ├── requirements.txt
│ └── Dockerfile
│
├── agent/
│ ├── orchestrator-prompt.md # System prompt for main agent
│ └── analysis-agent-prompt.md # System prompt for A2A sub-agent
│
├── knowledge-base/
│ ├── security-playbook.md # Security policies & SLAs
│ └── incident-response.md # Incident response procedures
│
├── dashboard/
│ ├── api.py # FastAPI backend (SSE streaming)
│ ├── requirements.txt
│ └── static/
│ ├── index.html # Command-center dashboard
│ ├── css/styles.css # Dark theme + animations
│ └── js/app.js # Real-time SSE client
│
├── setup.sh # One-command deployment script
└── README.md______________________________________________________________________
真正的API——没有模拟
ARCHON中的每个数据源都是真实的:
| 来源 | API | 作者 |
|---|---|---|
| GitHub存储库数据 | REST API v3 | GITHUB_TOKEN (可选,无需60次/小时) |
| CVE/漏洞数据 | NIST NVD 2.0 | NVD_API_KEY (可选,5个需求/30s无) |
| GitHub问题创建 | REST API v3 | GITHUB_TOKEN (写入操作所需) |
______________________________________________________________________
Archestra特征演示
1.私人MCP注册中心
这三台服务器都在Archestra的内部注册表中注册,而不是在公共npm/pip中注册。这演示了企业级MCP服务器管理。
2.K8s编排器
服务器作为带有stdio传输的Docker容器运行,由Archestra的Kubernetes编排器管理。每个服务器都有自己的资源限制。
3.代理间委托(A2A)
编排器使用 agent__analysis 前缀用于在发现不明确时调用分析子代理。这展示了Archestra用于任务分解的A2A协议。
4.知识图谱(GraphRAG)
安全手册和事件响应程序作为知识库文档加载。编排器通过Archestra的RAG管道查询它们,以获得具有策略意识的决策。
5.双LLM安全子代理
Archestra的内置安全层验证所有工具输入和输出。ARCHON无需任何额外代码即可从中受益。
6.旅馆遵守规定
每个工具调用都通过Archestra的OpenTetry管道进行跟踪。这 log_action 该工具在平台遥测之上添加了应用程序级审计条目。
7.成本控制
这两个代理都配置了适合其角色的令牌限制和温度设置(编排器: temperature=0.2,分析: temperature=0.1).
______________________________________________________________________
许可证
麻省理工学院
______________________________________________________________________
*建于❤️ 参加2 Fast 2 MCP黑客马拉松 阿奇斯特拉*
