Anthony-Sin/OmniReach
GitHub: Anthony-Sin/OmniReach
OMIREACH 是一个基于 Google ADK 构建的自主灾难响应智能体工作系统,通过多 agent 协作监控全球突发事件并生成可操作的字地救援物流方案。
Stars: 0 | Forks: 0
# 🌐 OMIREACH:模拟灾难响应工作系统
**OMIREACH** 是一个自主灾难响应系统,被设计为一个由专业化 agent 组成的工作系统,而非聊天机器人。它通过观察全球突发事件、对相互竞争的人道主义需求进行推理,并生成模拟的机器人物流和操作交接工件,从而弥合了**分析到行动(Analysis-to-Action, A2A)鸿沟**。
## 🏗️ 工作系统架构
OMIREACH 利用 **Google Agent Development Kit (ADK)** 来定义独立、解耦的工作通道。
* **`Sentinel`(观察者):** 监控实时的 **GDACS** 和 **USGS** 数据源,以识别并规范化全球突发事件警报。
* **`Intel`(丰富者):** 通过 **ReliefWeb** 添加人道主义背景,并使用 `ParallelAgent` 工作流添加环境数据。
* **`Triage`(策略家):** 根据紧急程度和影响对区域进行排名,并选择任务目标。
* **`Assembly`(架构师):** 使用 `LoopAgent` 进行迭代验证,设计专业套件(医疗、食品、避难所)。
* **`Logistics`(排序器):** 计算高效路线,并将套件压缩为紧凑的机器人拣选计划。
* **`Robotics`(构建者):** 分配模拟硬件并执行物理套件构建工作流。
* **`Delivery`(导航者):** 通过考虑实时天气风险来确定运输方式和路径。
* **`Action`(操作员):** 生成**操作事件导出**并分发合作方的 webhook。
* **`Coordinator`(协调器):** 管理任务状态、事件排序以及跨 agent 的完成规则。
## 📐 物流的逻辑
为了确保 **Logistics** agent 优先处理影响最大的任务,系统使用距离 $d$、天气风险 $\omega$ 和紧急程度 $\mu$ 来计算拟议任务 $M$ 的效率:
$$\text{Efficiency}(M) = \frac{\mu}{d \cdot \omega}$$
## 🚦 基于队列的边界
OMIREACH 将可独立部署的工作通道建模。**Coordinator** 通过命名队列分发工作,以确保通往微服务的清晰路径:
* `sentinel-observer` | `intel-worker` | `triage-worker`
* `assembly-worker` | `logistics-worker` | `robotics-worker`
* `delivery-worker` | `action-worker`
## 🛠️ 技术栈
* **核心推理:** Gemini API
* **编排:** Node.js 和 Google Agent Development Kit (ADK)
* **操作员 UI:** Next.js, React, TypeScript
* **地理空间:** Google Maps API(实时事件可视化)
* **数据来源:** GDACS(全球灾难警报和协调系统)、USGS、ReliefWeb
## 🚀 入门指南
### 环境变量
创建一个包含以下内容的 `.env.local` 文件:
```
GEMINI_API_KEY=your_key_here
GOOGLE_MAPS_API_KEY=your_key_here
AEGIS_WEBHOOK_URL=optional_callback_url
AEGIS_OUTBOX_DIR=./outbox
```
### 安装与运行
1. **安装依赖:**
npm install
2. **启动工作系统:**
npm run dev
3. **验证:**
npm run lint
npm test
### 运行时 API
* `GET /api/health`:服务状态。
* `POST /api/missions/start`:手动触发新的自主任务周期。
* `GET /api/system/queues`:查看活跃工作队列的实时快照。
## 🚧 挑战与经验
构建 OMIREACH 让我们认识到,救援的未来在于 **Agentic Orchestration**。我们通过构建一个无需人工干预即可处理事件排序的 Coordinator,克服了“模拟自主性”的障碍,确保了“数据 Agent”与“机械 Agent”之间的无缝交接。
**您希望我帮您起草 `Action-Worker` 逻辑,以格式化最终的事件导出数据包吗?**
标签:Google ADK, MITM代理, PyRIT, 人工智能, 多智能体系统, 灾难响应, 物流调度, 用户模式Hook绕过, 网络调试, 自动化, 自动化攻击