lina767/digital-war-room

GitHub: lina767/digital-war-room

一款结合 11 个专业 AI 智能体的地缘政治情报平台,通过多源 OSINT 数据的交叉关联分析将原始信号转化为可操作的情报评估。

Stars: 0 | Forks: 0

# 🛡️ Digital War Room **AI 驱动的多智能体 OSINT 情报平台** 唯一结合了 11 个专业 AI 智能体与政治学方法论的开源地缘政治情报平台 —— 实时监控跨越 GEOINT、SIGINT、SOCMINT、FININT、CYBER 和 TECHINT 的全球冲突。 *构建于 AI 工程、国际关系与 OSINT 技术的交汇点。*
## 🔍 什么是 Digital War Room? Digital War Room 是一个实时地缘政治情报平台,部署了 **11 个专业 OSINT 智能体** —— 由单个 Claude Sonnet 编排器监督 —— 从数十个开源中监控、分析和综合情报。与仅聚合新闻源的简单仪表板不同,DWR 应用结构化分析框架将原始信号转化为可操作的情报评估。 **为何这很重要:** 大多数 OSINT 仪表板只展示发生了什么。Digital War Room 告诉你 **这意味着什么** —— 通过将金融制裁数据与航班模式、抗议活动与互联网关闭、以及外交信号与大宗商品流向进行交叉对比。 ## 🏗️ 架构 ``` ┌─────────────────────────────────────────────────────────────────┐ │ CLAUDE SONNET SUPERVISOR │ │ Orchestrates agents · Resolves conflicts · Briefs │ └──────────────┬──────────────────────────────────┬───────────────┘ │ │ ┌──────────▼──────────┐ ┌──────────▼──────────┐ │ INTELLIGENCE LAYER │ │ MONITORING LAYER │ │ │ │ │ │ 📡 SIGINT Agent │ │ 🌍 GEOINT Agent │ │ 💰 FININT Agent │ │ 📱 SOCMINT Agent │ │ 🔒 CYBER Agent │ │ 📰 NEWS Agent │ │ 🏛️ DIPLO Agent │ │ ⚡ ENERGY Agent │ │ 🔬 TECHINT Agent │ │ ✊ PROTEST Agent │ │ │ │ 📍 PROXIMITY Agent │ └──────────┬───────────┘ └──────────┬───────────┘ │ │ ┌──────────▼───────────────────────────────────▼──────────┐ │ DATA SOURCES │ │ ACLED · GDELT · OONI · IODA · Polymarket · ADS-B │ │ GreyNoise · OpenSanctions · OFAC · EU Sanctions List │ └─────────────────────────────────────────────────────────┘ ``` ## 智能体分类 | 智能体 | 职责 | 关键数据源 | 通信对象 | |-------|--------------|------------------|-------------------| | **SIGINT** | 监控飞行模式、空域关闭和 ADS-B 异常 | ADS-B Exchange, Flightradar24 | GEOINT, PROXIMITY | | **FININT** | 追踪制裁合规性 (OFAC/EU/UN)、所有权链 (50% 规则)、大宗商品价格信号 | OpenSanctions, OFAC SDN, EU Consolidated List | ENERGY, DIPLO | | **GEOINT** | 分析地理冲突数据,绘制打击事件和领土变化 | ACLED, GDELT | SIGINT, NEWS | | **SOCMINT** | 处理社交媒体情报、叙事追踪和情绪分析 | X/Twitter feeds, Telegram channels | PROTEST, NEWS | | **NEWS** | 聚合并分类多语种来源的突发新闻 | RSS feeds, wire services (Reuters, AP) | 所有智能体 | | **CYBER** | 检测互联网中断、DDoS 攻击活动和黑客主义活动 | GreyNoise, OONI, IODA, Cloudflare Radar | SIGINT, TECHINT | | **ENERGY** | 监控能源基础设施、大宗商品流向和霍尔木兹海峡航运 | Maritime AIS, Oil price APIs | FININT, GEOINT | | **TECHINT** | 追踪军事技术部署、武器系统和国防工业信号 | SIPRI, defense wire services | SIGINT, DIPLO | | **PROTEST** | 绘制内乱、抗议运动和政府镇压地图 | ACLED, SOCMINT feeds | SOCMINT, CYBER | | **DIPLO** | 分析外交声明、联合国投票和条约活动 | Government press offices, UN records | FININT, ENERGY | | **PROXIMITY** | 计算地理风险评分和基于邻近性的威胁评估 | Aggregated geolocation data | GEOINT, SIGINT | ## ✨ 主要特性 - **🗺️ 交互式战区地图** — 具有多层覆盖的实时冲突可视化 —— 在单个交互式地图上展示打击事件、飞行路径、海军动向和抗议热点。 - **📋 每日情报简报** — AI 生成的早间简报,将所有 11 个智能体的隔夜发展综合为带有置信度和来源归属的结构化评估。 - **🔮 预测展望** — 概率性预测,将 Polymarket 预测数据与结构化智能体评估集成用于情景分析。 - **📂 来源目录** — 每个数据点的透明来源归属 —— 每个声明都链接回其原始来源,并附带可靠性评级。 - **⚓ 霍尔木兹海峡监视器** — 专用模块,追踪通过世界最关键石油咽喉的航运交通、大宗商品流向和保险风险。 - **🛡️ 制裁合规引擎** — 自动化 OFAC/EU/UN 制裁筛查及 50% 所有权链分析 —— 采用与主要金融机构合规部门相同的方法论。 ## 🛠️ 技术栈 | 层级 | 技术 | |-------|------------| | **Frontend** | React 18, TypeScript, Vite, Tailwind CSS, shadcn/ui | | **Backend** | Python 3.12, FastAPI, Pydantic | | **AI Orchestration** | Claude Sonnet (single supervisor), rule-based agent routing | | **Hosting** | Vercel (frontend), Railway (backend) | | **Analytics** | Vercel Analytics | ## 为什么选择基于规则 + Claude 监督器(而不是 LangGraph)? DWR 最初运行在完整的 LangGraph 多智能体图上。我们迁移到了 **混合架构** —— 基于规则的智能体调度加上单个 Claude Sonnet 监督器进行综合 —— 在保持分析质量的同时将 token 成本降低了 **约 70%**。监督器处理规则无法完成的任务:解决矛盾信号、权衡来源可靠性以及生成自然语言简报。 ## 🚀 快速开始 ### 前置条件 - Node.js 18+ - Python 3.12+ ### Frontend ``` git clone https://github.com/lina767/digital-war-room.git cd digital-war-room npm install npm run dev # → http://localhost:8080 ``` ### Backend ``` cd backend pip install -r requirements.txt # 可选,用于 lint/tests/type checks pip install -r requirements-dev.txt uvicorn main:app --reload ``` ### 环境变量 在项目根目录创建一个 `.env` 文件: ``` VITE_API_URL=your_backend_url ``` 对于环境分离,请使用: - `.env.development.example` - `.env.staging.example` - `.env.production.example` - `backend/.env.development.example` - `backend/.env.staging.example` - `backend/.env.production.example` 每个后端环境文件都应使用 `backend/.env.example` 中的所需密钥进行完善。 ### 使用 Docker Compose 进行本地全栈部署 ``` docker compose up --build ``` 服务: - Frontend: `http://localhost:8080` - Backend: `http://localhost:8000` - Postgres/pgvector: `localhost:5432` ## 🔌 API 快速参考 Backend 基础 URL: `http://localhost:8000` | Endpoint | Method | 用途 | |---------|--------|---------| | `/health` | GET | 存活探针 | | `/api/analyze/status?conflict=Iran` | GET | 冲突的缓存/错误状态 | | `/api/analyze/latest?conflict=Iran` | GET | 最新缓存分析 | | `/api/analyze/refresh?conflict=Iran` | GET | 触发后台刷新 | | `/api/analyze/stream?conflict=Iran` | GET (SSE) | 流式传输每个智能体 + 监督器的事件 | | `/api/agents/status` | GET | 最后一次每个智能体的状态快照 | | `/api/agents/history` | GET | 最近的运行历史 | OpenAPI 文档可在本地开发的 `http://localhost:8000/docs` 获取。 ### Backend 请求流程 ``` flowchart LR A[Client] --> B[/FastAPI Routes/] B --> C[Supervisor] C --> D[Specialized Agents] D --> E[(StateService Cache)] E --> B ``` ## ✅ 代码质量与测试 Backend 测试布局: ``` backend/tests/ ├── test_agents/ # Unit tests for agent contracts and behavior ├── test_integration/ # Cross-module and orchestration contract tests ├── test_api/ # FastAPI endpoint tests └── conftest.py # Shared fixtures and mock payloads ``` 运行后端质量检查: ``` cd backend pytest mypy . ruff check . ``` 覆盖率使用 `pytest-cov` 强制执行,最低阈值为 **60%**。 Pre-commit hooks (`.pre-commit-config.yaml`) 运行: - `ruff` (backend) - `mypy` (backend) - `prettier --check` (frontend/repo) ## 🗺️ 路线图 - [ ] 多战区支持(超越中东) - [ ] 协作注释层 - [ ] 面向研究人员的 API 访问 - [ ] 基于 Webhook 的警报系统 - [ ] 移动端优化的简报视图 - [ ] 集成 Bellingcat 验证工具 ## 📜 脚本 | 命令 | 描述 | |---------|-------------| | `npm run dev` | 启动前端开发服务器 | | `npm run build` | 生产环境构建 | | `npm run preview` | 预览生产环境构建 | | `npm run lint` | 运行 ESLint | | `npm run test` | 运行测试 (Vitest) | | `npm run typecheck` | 运行 TypeScript 类型检查 | | `npm run version:patch` | Bump patch 版本 (SemVer) | | `npm run version:minor` | Bump minor 版本 (SemVer) | | `npm run version:major` | Bump major 版本 (SemVer) | ## ⚙️ DevOps - CI: `.github/workflows/ci.yml` 在 push 和 pull request 时运行后端 lint/tests/coverage、前端测试和类型检查。 - 依赖更新: `.github/dependabot.yml` 为 GitHub Actions、npm 和 pip 创建自动化更新 PR。 - 版本控制: 项目发布遵循语义化版本控制,记录在 `CHANGELOG.md` 中。 ## 🤝 贡献 Digital War Room 是开源的。欢迎贡献 —— 无论是添加新智能体、改进现有数据管道,还是修复 UI 错误。 1. Fork 本仓库 2. 创建一个特性分支 (`git checkout -b feature/new-agent`) 3. 提交你的更改 (`git commit -m 'Add maritime intelligence agent'`) 4. 推送到该分支 (`git push origin feature/new-agent`) 5. 开启一个 Pull Request ## 📄 许可证 本项目是开源的。详见 [LICENSE](LICENSE)。
**由 Lina 构建 — 政治学与 AI 工程** *在地缘政治与人工智能的交汇处,结合学术严谨性与工程执行力。* [在线演示](https://digital-war-room.com) · [报告 Bug](https://github.com/lina767/digital-war-room/issues) · [请求功能](https://github.com/lina767/digital-war-room/issues)
标签:Claude, CVE检测, DLL 劫持, ESC4, FININT, GEOINT, HTTP/HTTPS抓包, OSINT, PyRIT, Python, SIGINT, SOCMINT, TECHINT, 人工智能, 冲突监测, 国际关系, 地缘政治, 地缘政治分析, 多智能体系统, 大语言模型, 威胁情报, 安全研发, 开发者工具, 态势感知, 情报收集, 数据融合, 无后门, 智能体编排, 测试用例, 漏洞研究, 用户模式Hook绕过, 网络情报, 舆情分析, 请求拦截, 逆向工具