World Monitor:把 Palantir 级全球情报仪表盘装进你的浏览器,开源且免费

凌晨三点,你盯着几个新闻滚动网站想拼凑出中东某条航线的真实风险 —— 航班动态、海军舰艇位置、原油价格异动、社交媒体上的零星目击,这些信号散落在十几个网站之间,每个都要切换标签页,每个都在用不同的时间戳说话。等你把信息拼好,事件已经演进了三轮。

这种” 信息富足但洞察稀缺” 的体验,正是 koala73/worldmonitor 想解决的核心痛点。它在 GitHub 上拿下了 75.8k stars、11.3k forks,位列 GitHub Trending 当日第一,并被许多 OSINT 分析师称为” 开源版 Palantir”。今天我们就拆开它,看看一个用纯前端 + TypeScript 构建的全球情报仪表盘,到底是怎么把新闻、地缘政治、军情、金融、能源、灾害这些看似割裂的信号流,汇聚成一张实时态势图的。

一、项目背景:为什么需要” 全球情报仪表盘”

在过去十年里,开源情报(OSINT)工具的生态发生了明显分化:

  • 新闻聚合类:Feedly、Inoreader 解决了 RSS 时代的阅读效率问题,但它们只搬运文本,不做信号关联。
  • 航班 / 船舰追踪类:FlightRadar24、MarineTraffic 各自占据一个垂直领域,但它们不关心上下文。
  • 金融行情类:TradingView、Bloomberg 是付费玩家的主场,免费用户拿到的数据维度有限。
  • 地图工具:Google Earth、Mapbox 是底座,但缺乏业务化的事件叠加层。

对于同时关心” 这条航线是否经过战区”、” 该地区油田产能是否受影响”、” 周边股市反应如何” 的用户来说,没有任何一个工具能把这些信号并置在同一个时间轴、同一张地图上做交叉分析。商业产品如 Palantir、Databricks IQ 解决了一部分问题,但定价让个人分析师、独立记者、小型智库望而却步。

World Monitor 的目标,就是在这个中间地带插进去一根杠杆:用浏览器能跑的全栈 TypeScript,把全球信源拉到客户端,用 AI 做摘要和分类,再用 3D 地球引擎把它们渲染到一个统一界面。换句话说,它把” 情报分析师的桌面” 做成了一个 PWA 和 Tauri 桌面应用,开源、AGPL-3.0、可自托管。

二、核心功能:六大能力模块

1. 500+ 实时信源 + AI 摘要

World Monitor 接入了 65+ 外部数据提供方、500+ 编辑精选 feed,覆盖 15 个分类:地缘政治、军事、金融、能源、气候、航空、网络安全、灾害、基础设施、新闻情报等。所有信源都经过 freshness 监控(35 个源组),AI 会即时做关键词分类,异步用 LLM 做摘要精炼。

这意味着你打开页面看到的不是” 又一个新闻列表”,而是” 已经被归类、摘要、去重过的情报流”。

2. 双引擎地图:3D 地球 + WebGL 平面

地图是 World Monitor 的视觉招牌。它支持两套渲染引擎:

  • globe.gl + Three.js —— 旋转的 3D 地球,用于宏观视角下追踪洲际导弹轨迹、洲际航班、卫星轨道。
  • deck.gl + MapLibre GL —— 高性能的 2D WebGL 平面地图,用于密集叠加 56 种图层,包括 ADS-B 飞行、ADS-B 海军舰艇、卫星火点、冲突区、基础设施等。

底层数据由 Wingbits 等 ADS-B 网络提供实时 ADS-B 飞行数据。Layer 之间可以任意组合,比如” 叠加伊朗周边的军用飞行 + 霍尔木兹海峡的油轮位置 + 全球原油期货价格”。

3. Country Instability Index (CII v8)

这是一个服务端权威评分,对 31 个 Tier-1 国家做实时压力打分。它不是简单的新闻情感分析,而是综合军事部署、社会抗议、经济异动、网络攻击等多个数据流,输出一个 0–100 的不稳定指数。对于做风险评估、做资产配置、做旅行决策的分析师来说,这相当于一个开箱即用的” 国家风险仪表”。

4. 跨流信号关联

World Monitor 的差异化亮点在于它不只展示单条信息流,而是把多条流做关联。比如:

  • 某地区出现军事飞行激增 → 自动关联该地区原油期货价格波动 → 关联该地区主流媒体的报道频率
  • 某港口城市发生地震 → 自动关联海啸预警、机场关闭、油轮改道

这种”cross-stream correlation” 在商业工具里通常需要专业团队手动建模,World Monitor 直接以现成模块的方式提供。

5. 本地 AI / 无 API Key 模式

整个项目默认可以用 Ollama 在本地跑,不依赖任何云端 API key。对安全敏感的企业用户和个人研究者来说,这意味着” 分析逻辑跑在本地、信源数据从公开渠道拉、不会泄露你的查询模式给第三方”。当然也支持 Groq、OpenRouter 等云端路由。

6. AI Agent 原生:MCP / CLI / SDK

这是 World Monitor 区别于传统仪表盘产品的最大亮点。它不是” 为人类浏览而做”,而是为 Agent 而设计

  • MCP serverhttps://worldmonitor.app/mcp(Streamable HTTP),提供 tools/listtools/call,支持 X-WorldMonitor-Key Header 或 OAuth 认证。
  • REST APIhttps://api.worldmonitor.app,有完整 OpenAPI spec。
  • CLInpm i -g worldmonitor(别名 wm),无依赖、单二进制、立刻可用。
  • SDK(零依赖):Python(worldmonitor-sdk)、Ruby(worldmonitor)、Go(github.com/koala73/worldmonitor/sdk/go)。
  • Agent 发现文件llms.txt/.well-known/agent-skills/index.json/.well-known/api-catalog

也就是说,你可以让自己的 Claude / Codex / Cursor 在写代码或做调研时,直接通过 MCP 调用 World Monitor 的实时数据,把” 全球情报” 变成 Agent 工具箱里的一个标准 tool。

三、实战示例:5 分钟用上 World Monitor

方式 1:直接访问在线版本

无需安装,进入 worldmonitor.app 即可看到 World 仪表盘。如果你关注特定领域:

  • tech.worldmonitor.app —— 科技情报变体
  • finance.worldmonitor.app —— 金融雷达(含 29 家交易所、商品、加密货币、7 信号市场合成)
  • commodity.worldmonitor.app —— 大宗商品
  • energy.worldmonitor.app —— 能源
  • happy.worldmonitor.app —— 切换到只看” 积极消息” 的轻量版

方式 2:本地自托管(Web)

1
2
3
4
5
6
git clone https://github.com/koala73/worldmonitor.git
cd worldmonitor
npm install
# 可选:在 .env.local 里填特定数据源的 key
npm run dev
# 打开 http://localhost:3000

无需任何环境变量也能跑起来(只是部分数据源会用 mock 数据)。完整自托管指南见 worldmonitor.app/docs/getting-started

方式 3:安装桌面端

桌面端基于 Tauri 2(Rust)+ Node.js sidecar,一个二进制文件可在 Windows /macOS ARM /macOS Intel / Linux AppImage 上运行:

1
2
3
# macOS Apple Silicon
curl -L "https://www.worldmonitor.app/api/download?platform=macos-arm64" -o worldmonitor.dmg
open worldmonitor.dmg

桌面应用会每 6 小时轮询 worldmonitor.app/api/version 检查新版本,发现新版本会显示非侵入式更新徽章。

方式 4:在 Claude Code 里接入 MCP

这是最值得尝试的玩法。在 ~/.claude/mcp_servers.json 或对应工具的 MCP 配置里加:

1
2
3
4
5
6
7
8
9
10
11
{
"mcpServers": {
"worldmonitor": {
"type": "streamable-http",
"url": "https://worldmonitor.app/mcp",
"headers": {
"X-WorldMonitor-Key": "wm_xxx_your_key_here"
}
}
}
}

API Key 在 worldmonitor.app/pro 申请。然后你就可以对 Agent 说:

“用 World Monitor 检查过去 24 小时里红海区域的军事飞行和油轮动态,结合 CII 评分告诉我当前局势。”

Agent 会自动调用 tools/list 找到相关工具、把结果聚合成可读报告。

方式 5:Python SDK 直接调用

1
2
3
4
5
6
7
8
9
10
from worldmonitor_sdk import Client

with Client(api_key="wm_xxx") as wm:
# 拉取 CII 评分
cii = wm.countries.cii(tier=1)
print(cii[0])
# 拉取红海区域的实时事件
events = wm.events.query(region="red-sea", since="24h")
for e in events[:5]:
print(e.title, "-", e.severity)

完整 SDK 路径在 sdk/python/sdk/ruby/sdk/go/ 三个目录,零依赖,可以直接 vendor 到自己的项目里。

四、适用场景与限制

适合谁用

  • OSINT 分析师 / 记者:免费拿到接近商业工具的全球态势视图。
  • 风控 / 合规团队:用 CII 评分做国家风险监测、用 7 - 信号市场合成做资产预警。
  • AI Agent 开发者:通过 MCP 让 Agent 获得” 实时世界感知” 能力。
  • 能源 / 航运 / 大宗商品从业者:盯霍尔木兹海峡、红海、波斯湾等咽喉要道的实时状态。
  • 研究者 / 学生:零成本复现一个” 全球态势感知” 的 demo,写论文、做课程项目。

当前限制

  • 信源覆盖偏英文世界:虽然支持 25 种语言和 RTL,但对中文信源的覆盖深度还不够。如果你主要关心中文圈事件,需要搭配其他工具。
  • AGPL-3.0 协议:可以自托管、私有部署,但不能闭源修改后对外提供服务(这是它能持续开源开发的基础)。
  • 专业数据源需要 Key:默认无 key 也能跑,但想要 FlightRadar 级别的 ADS-B 数据、特定金融终端数据,需要申请付费 key。
  • 实时不等于预测:World Monitor 是感知层工具,不是预测模型。如果你需要” 未来 7 天事件概率”,需要在自己上层接 forecasting 模型。

五、总结

World Monitor 让我兴奋的不是某一个酷炫的 3D 地球特效,而是它代表的一个方向:开源情报工具开始” 为 Agent 而设计”。MCP server、零依赖 SDK、CLI、REST API、Agent 发现文件 —— 这一整套接口让” 全球情报” 从一个孤立的桌面工具,变成了 Agent 生态里的一等公民。

对个人开发者来说,这意味着你可以用世界 Monitor 当作 Claude / Codex / Cursor 的” 眼睛”,让 Agent 不再只盯着代码仓库和文档,而是真正能感知到窗外正在发生什么。

对团队来说,这意味着你不必再为每个新分析师都买一份 Bloomberg 终端,把 World Monitor 私有部署到内网,配合 MCP 给内部 Agent 接入,就是一个可定制、可观测、可审计的情报中台。

如果你正在做 OSINT、AI Agent、金融科技、供应链风险、新闻聚合任何一个方向的工具,强烈建议花 30 分钟把 World Monitor 跑起来,体验一下”500 个信源在你眼前实时收敛成一个故事” 的感觉。你会发现,过去你以为是” 信息不足” 的问题,很多时候其实是” 信息没有被有效组织”。

GitHub 地址:https://github.com/koala73/worldmonitor
官方仪表盘:https://www.worldmonitor.app
MCP 接入文档:https://worldmonitor.app/mcp