引言
"Real-time global intelligence dashboard --- AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface."
这是「每日一个开源项目」系列的第 166 篇 。今天的项目是 worldmonitor ------ 一个实时全球情报仪表盘,将 AI 驱动的新闻聚合、地缘政治监控和基础设施追踪整合到一个统一的态势感知界面中。
73,260 颗 Star,2026 年 1 月创建,是今年 GitHub 增长最快的开源项目之一。项目的 Topics 里有一个词很能说明它的定位:palantir ------ 这是在公开宣示,它要做一个开源版的 Palantir。
你会学到什么
- worldmonitor 的六大核心功能模块
- 双地图引擎(3D 地球 + WebGL 平面地图)和 56 种图层的设计逻辑
- 国家不稳定性指数(CII v8)的评分机制
- 本地 AI 集成:Ollama 全本地运行,无需 API Key
- MCP 服务器、REST API、CLI 和多语言 SDK 的接入方式
- 6 个站点变体(通用/科技/金融/大宗商品/能源/积极新闻)背后的设计思路
前提知识
- 了解基本的 Web 应用概念
- 对地缘政治、金融市场或 OSINT(开源情报)有基本兴趣
项目背景
概述
worldmonitor 是一个将全球多维度数据整合到单一界面的情报平台。它同时也是一个为 AI agent 设计的数据后端:提供 MCP 服务器接口,让任意支持 MCP 协议的 AI 工具都可以查询全球实时情报数据。
项目信息
- 作者: Elie Habib(koala73)
- 主语言: TypeScript
- 许可证: AGPL-3.0-only
- 官网 : worldmonitor.app
项目数据
- ⭐ GitHub Stars: 73,260+
- 🍴 Forks: 10,984+
- 📄 许可证: AGPL-3.0
- 📅 创建时间: 2026-01-08
快速启动
bash
git clone https://github.com/koala73/worldmonitor.git
cd worldmonitor
npm install
npm run dev
打开 localhost:3000。无需任何环境变量即可运行 ------ 特定数据源需要 API 密钥,但核心界面开箱即用。
启动特定站点变体:
bash
npm run dev:tech # tech.worldmonitor.app
npm run dev:finance # finance.worldmonitor.app
npm run dev:commodity # commodity.worldmonitor.app
npm run dev:happy # happy.worldmonitor.app
npm run dev:energy # energy.worldmonitor.app
也可以直接使用托管版本,无需任何安装:
- worldmonitor.app --- 通用版(地缘政治/军事/灾难)
- tech.worldmonitor.app --- 科技情报
- finance.worldmonitor.app --- 金融市场
- commodity.worldmonitor.app --- 大宗商品
- energy.worldmonitor.app --- 能源市场
- happy.worldmonitor.app --- 积极新闻(与前五个形成对比)
六大核心功能
1. AI 新闻聚合引擎
500+ 精选新闻源,覆盖 15 个类别,AI 自动合成新闻简报。
特色能力:
- 跨流相关分析(Cross-stream correlation):将军事、经济、灾难、升级信号汇聚,自动检测多维度信号的交叉点
- 本地 AI 支持:用 Ollama 在本地运行所有 AI 功能,无需任何 API Key
- 25 种语言,提供本语言原生 feed,支持 RTL(从右到左)排版
2. 双地图引擎 + 56 种图层
这是 worldmonitor 视觉上最震撼的部分:
3D 地球模式(globe.gl + Three.js):
- 球形地球渲染,可旋转缩放
- 实时事件标注叠加
WebGL 平面地图模式(deck.gl + MapLibre GL):
- 高性能 GPU 渲染的平面地图
- 更适合分析地区性事件分布
56 种地图图层类型,涵盖:
- 军事活动热点
- 自然灾害(地震、洪水、火灾)
- 基础设施状态(电网、港口、机场)
- 航班实时轨迹(由 Wingbits ADS-B 数据提供)
- 海洋/航运路线
- 网络攻击来源分布
- 气候/环境数据
3. 国家不稳定性指数(CII v8)
worldmonitor 自研的 Country Instability Index(CII),服务端权威评分,当前版本 v8:
- 覆盖 31 个 Tier-1 国家
- 综合多维度信号:政治动荡、军事冲突、经济压力、社会事件等
- 压力评分算法在服务器端运行,客户端直接使用结果(而非各自计算)
- 为用户提供「这个国家现在有多不稳定」的量化参考
这是 worldmonitor 区别于普通新闻聚合器的关键特性之一:它不只是展示新闻,而是用算法将信息转化为量化的态势感知指标。
4. 金融雷达
- 29 个股票交易所实时数据
- 大宗商品(石油、黄金、天然气等)
- 加密货币市场
- 7 信号市场综合指数:将多维度金融信号合并为单一风险/机会评分
Finance 变体(finance.worldmonitor.app)将金融数据提升为主视图,适合将市场动态与地缘政治事件关联分析。
5. 原生桌面应用(Tauri 2)
提供 Windows、macOS(Apple Silicon / Intel)、Linux(AppImage)原生桌面应用,基于 Tauri 2(Rust + WebView)构建:
- 单一 Tauri 二进制文件,在应用内切换不同变体
- Node.js sidecar 处理 API 逻辑
下载链接直接通过官网 API 提供:
ini
https://www.worldmonitor.app/api/download?platform=windows-exe
https://www.worldmonitor.app/api/download?platform=macos-arm64
https://www.worldmonitor.app/api/download?platform=linux-appimage
6. 65+ 数据源接入
覆盖以下领域的 65+ 外部数据提供商:
- 地缘政治情报
- 金融市场数据
- 能源(油气、可再生能源)
- 气候与环境
- 航空(ADS-B 实时航班)
- 网络安全事件
- 军事动态
- 基础设施状态
- 新闻情报
500+ 精选 feed,35 个数据源组的新鲜度监控。
技术栈深度解析
前端架构
markdown
Vanilla TypeScript + Vite
│
├── 3D 地球:globe.gl + Three.js
├── 平面地图:deck.gl + MapLibre GL
└── 浏览器端 AI:Transformers.js(无需服务端)
值得注意的选择:纯 TypeScript(不依赖 React/Vue/Angular 等框架)+ Vite 构建。这在当前 Web 前端生态里是相对少见的取向,对性能控制更直接。
AI/ML 层
vbnet
本地推理:Ollama(完全本地,零 API Key)
云端推理:Groq / OpenRouter(可选)
浏览器端:Transformers.js(无需服务端的轻量推理)
API 合约层
这是架构里相对不寻常的一个选择:使用 Protocol Buffers 定义 API 合约:
- 281 个 proto 文件
- 35 个服务定义
- sebuf HTTP 注解
部署层
60+ Vercel Edge Functions(无服务器边缘计算)
Railway relay(中继服务)
Tauri(桌面应用)
PWA(渐进式 Web 应用)
缓存策略:Redis(Upstash)+ 三层缓存 + CDN + Service Worker。
程序化接入:为 AI Agent 而生
worldmonitor 明确将自己定位为 AI agent 的数据后端,提供多种接入方式:
MCP 服务器
arduino
端点:https://worldmonitor.app/mcp
协议:Streamable HTTP MCP
认证:X-WorldMonitor-Key 请求头 或 OAuth
tools/list 端点无需认证(公开可查询所有工具),tools/call 需要 API Key。
CLI
bash
# 无需安装,直接查询所有 MCP 工具(无需 Key)
npx worldmonitor tools
# 安装全局命令(alias: wm)
npm install -g worldmonitor
# 带 API Key 查询风险数据
worldmonitor risk IR --api-key wm_xxx
多语言 SDK
| 语言 | 包名 | 安装 |
|---|---|---|
| Python | worldmonitor-sdk |
pip install worldmonitor-sdk |
| Ruby | worldmonitor |
gem install worldmonitor |
| Go | github.com/koala73/worldmonitor/sdk/go |
go get ... |
| JavaScript/TypeScript | worldmonitor |
npm i worldmonitor |
所有 SDK 均为零依赖客户端库,与 CLI 功能对等。
Agent 发现文件
arduino
https://worldmonitor.app/llms.txt
https://worldmonitor.app/.well-known/agent-skills/index.json
https://worldmonitor.app/.well-known/api-catalog
遵循新兴的 agent 发现规范,让 AI 工具可以自动发现并描述 worldmonitor 的能力。
6 个站点变体的设计逻辑
从单一代码库生成 6 个不同定位的站点,这是 worldmonitor 在产品设计上值得关注的选择:
| 变体 | 网址 | 核心数据视角 |
|---|---|---|
| world(通用) | worldmonitor.app | 地缘政治、军事、灾难、全球动态 |
| tech | tech.worldmonitor.app | 科技行业动态、AI、网络安全 |
| finance | finance.worldmonitor.app | 市场数据与地缘政治的交叉分析 |
| commodity | commodity.worldmonitor.app | 大宗商品、供应链、资源地缘政治 |
| energy | energy.worldmonitor.app | 油气、可再生能源、能源政治 |
| happy | happy.worldmonitor.app | 积极新闻(刻意与前五个对比) |
「happy」变体的存在说明团队有自我意识:前五个变体都在放大负面信号(冲突、风险、波动),happy 变体是一个对冲,也是对「全球情报仪表盘默认使人焦虑」这个问题的显式回应。
参考资源
官方链接
- 🌟 GitHub : koala73/worldmonitor
- 🌐 主站 : worldmonitor.app
- 📖 文档 : worldmonitor.app/docs/docume...
- 🚀 快速开始 : worldmonitor.app/docs/gettin...
- 🏗️ 架构文档 : worldmonitor.app/docs/archit...
- 📦 npm CLI : npmjs.com/package/wor...
- 💬 Discord : discord.gg/re63kWKxaz
总结
worldmonitor 做了一件看起来「野心过大」但实际上执行相当扎实的事:把 Palantir 类的情报仪表盘开源出来。73k Star 在三个月内积累,说明这个痛点是真实存在的 ------ 全球态势感知工具长期是商业闭源产品的专属领域。
几个设计决策值得记录:
为 AI Agent 优先设计 :MCP 服务器端点、llms.txt、agent-skills manifest、多语言 SDK ------ 这些不是事后加的插件,而是作为核心接入层和 Web 界面并列设计的。worldmonitor 不只是一个给人看的仪表盘,也是一个供 AI agent 查询全球情报的数据层。
本地 AI 优先:Ollama 支持让整个 AI 功能链可以在本地完全运行,不强制依赖任何云端 API。这在处理敏感地缘政治查询时是重要的隐私保证。
单代码库多变体:同一份代码生成 6 个不同定位的站点,说明在架构层面对「用户群细分」有清晰的思考,而不是把所有数据堆到一个界面里让用户自己筛选。
CII 服务端权威评分:不让客户端各自计算不稳定性指数,而是在服务器端维护权威评分,确保所有用户看到的是一致的、经过统一算法处理的结果。
如果你关注地缘政治、需要将全球事件与市场动态关联分析,或者正在构建需要实时全球数据的 AI agent pipeline,worldmonitor 是目前开源领域里能力最完整的选项之一。
探索 PrimeSkills ------ 精选 AI agent 和技能工具,每一个都经过真实工作流验证。没有炒作,只有真正好用的工具。
访问我的个人主页,获取更多见解和有趣的产品。