worldmonitor v2.11.4 介绍与选型指南
梳理 worldmonitor v2.11.4 全球情报仪表盘的定位、架构、功能与程序化访问能力,给出与 Glance/homepage/Dashy 的量化选型对比,全文联网溯源(2026-10-25),CLI 免 key 命令实测。
worldmonitor v2.11.4 介绍与选型指南
目标:面向正在评估「全球情报/态势感知仪表盘」的工程师,梳理 worldmonitor v2.11.4 的产品定位、核心架构、功能边界与程序化访问能力,并给出与 Glance、homepage、Dashy 的量化选型对比。本文为 A1 认知篇(联网溯源),全部版本、星数、许可与功能口径均于 2026-10-25 从官方渠道(GitHub 仓库 koala73/worldmonitor、官方文档站 worldmonitor.app、releases.atom 订阅源、shields.io 徽章)实查取得并标注来源;其中 CLI 免 key 命令已在本机实测并附真实回显,自托管部署实测见本专栏《worldmonitor v2.11.4 Docker Compose 部署指南》。
一、环境信息
本文为 A1 认知篇(联网溯源),写作时不依赖本地部署环境,所有事实性内容均于 2026-10-25 从下列官方渠道实查:
| 信息项 | 取值 | 来源 |
|---|---|---|
| 项目实体(维护仓库) | koala73/worldmonitor(作者 Elie Habib,GitHub 用户 koala73) | GitHub 仓库页标题与 Author 节 |
| 仓库创建时间 | 2026-01-08 | GitHub 仓库页内嵌 JSON createdAt |
| 最新稳定版本 | World Monitor v2.11.4(2026-10-24 发布) | GitHub Releases(releases.atom 订阅源) |
| 开源许可证 | AGPL-3.0-only(源代码);CLI 客户端单列 MIT | README License 节 + 仓库 License 徽章 |
| 社区规模(GitHub Stars) | 89,438 | GitHub 仓库页 HTML stargazerCount,查询日期 2026-10-25 |
| Open Issues | 248 open | shields.io github/issues 徽章,查询日期 2026-10-25 |
| 主语言 | TypeScript | 仓库页与 README 技术徽章 |
| 官方托管站 | www.worldmonitor.app 及 tech / finance / commodity / happy / energy 五个变体站 | README「Ways to Use It」表 |
| 官方文档站 | worldmonitor.app/docs(Mintlify 构建,仓库内随源码分发) | 仓库 README 与 docs/docs.json |
💡 说明:该项目 2026-01-08 才建仓,截至 2026-10-25 已积累约 8.9 万星,是 2026 年增速最高的自托管新仓之一;README 明确「所有站点变体与桌面二进制都由同一代码库、同一发布流程产出」,评估时不必担心多端功能分叉。
二、软件概述
2.1 定位与身份
worldmonitor 的官方自我定位只有一句话:「Real-time global intelligence dashboard — AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface」(实时全球情报仪表盘——把 AI 驱动的新闻聚合、地缘政治监测与基础设施追踪统一进一个态势感知界面,来源:GitHub 仓库 README,查询日期 2026-10-25)。
拆开看,它同时做四件事:
- 新闻聚合:对全球与区域分类的策展新闻源做 AI 合成简报(AI-synthesized briefs),而非简单 RSS 列表;
- 地缘监测:国家不稳定指数(CII v14,覆盖 31 个 Tier-1 国家)、冲突事件、军事航班、制裁、事件升级信号;
- 基础设施追踪:海底电缆、管道、港口、军事基地、核设施、机场延误、航运咽喉点等 30+ 类静态与实时图层;
- 金融雷达:股指、大宗商品、加密货币、市场综合指数与「新闻 ↔ 市场」联动。
一句话理解它的产品逻辑:把过去散落在新闻终端、航班追踪站、地震速报、航运 AIS 网站里的几十个信息源,聚合成一个「地球在眼前」的单页态势屏,并且以「无需任何 API key 即可看核心数据」作为自托管底线。
💡 技术拓展:「仪表盘」在自托管领域有三个不同物种,选型前先分清——
形态 代表产品 回答的问题 数据来自哪里 情报/态势仪表盘 worldmonitor 「世界现在正在发生什么」 内置聚合的数百个公开数据源 个人起始页/导航门户 Glance、homepage、Dashy 「我关心的信息和服务入口」 用户自行配置的 RSS/书签/API 监控告警仪表盘 Grafana、Uptime Kuma 「我的系统和业务是否健康」 自己的指标、探针、日志 worldmonitor 属于第一类:数据源是产品的一部分,开箱即有;后两类则把「配什么源」完全交给用户。三者也可以共存(worldmonitor 当态势屏,Grafana 当监控屏)。
2.2 版本与许可
- 当前稳定版:v2.11.4,2026-10-24 发布(来源:GitHub releases.atom,查询日期 2026-10-25)。
- 许可证:AGPL-3.0-only。README 的许可表明确列出:个人/研究/教育、自托管实例、fork 修改、商业使用/SaaS 均允许,但必须遵守 AGPL 的开源与源码可得义务;私有闭源使用或官方品牌授权需另行商业许可(来源:README License 节,查询日期 2026-10-25)。版权声明为
Copyright (C) 2024-2026 Elie Habib。 - 客户端例外:官方 npm CLI(
worldmonitor包)单独以 MIT 许可发布——「MIT-licensed thin client(平台本身保持 AGPL-3.0)」,写脚本调用不需要承担 AGPL 传染(来源:cli/README.md)。 - 治理与社区:作者个人主导(Elie Habib),配套 Mintlify 文档站、AGENT/CONTRIBUTING/SECURITY 完整文件、贡献者画像与致谢的安全研究员名单(2026 年有 1 位研究者报告了 3 项桌面端安全问题)。
2.3 版本节奏(量化)
近期发布记录(来源:GitHub releases.atom,查询日期 2026-10-25):
| 版本/Tag | 发布时间 | 备注 |
|---|---|---|
| World Monitor v2.11.2 | 2026-10-20 | 补丁版本 |
| World Monitor v2.11.3 | 2026-10-23 | 补丁版本 |
| World Monitor v2.11.4 | 2026-10-24 | 当前最新稳定版 |
| cli-v0.2.1 / py-v0.1.2 / gem-v0.1.2 / sdk/go/v0.1.2 | 2026-10-23 | CLI 与三语言 SDK 同日发版 |
| (更早)v2.11.x 系列 | 2026-10 中旬连续发布 | 修复+新面板滚动迭代 |
从 10-20 到 10-24 四天连发三个补丁版本,且 CLI/SDK 与主程序分开打 tag、各自独立发版——版本节奏极快,属「滚动小步快跑」型项目。自托管升级前应逐版阅读 Release Notes;本文全部实测基于 v2.11.4 快照(main 分支 commit d8ba38d,2026-10-24)。
三、核心架构
3.1 运行时构成与技术栈
worldmonitor 是「静态 SPA + 按需服务端」的混合体。官方 Getting Started 给出的技术栈矩阵(来源:worldmonitor.app/docs/getting-started,查询日期 2026-10-25):
| 层 | 技术 | 用途 |
|---|---|---|
| 前端语言 | TypeScript 5.x | 全站类型安全 |
| 构建 | Vite | 快速 HMR、生产构建 |
| 桌面地图 | deck.gl + MapLibre GL | WebGL 加速渲染大数据量图层 |
| 移动地图 | D3.js + TopoJSON | SVG 回退,省电 |
| 并发 | Web Workers | 集群与关联计算移出主线程 |
| AI/ML | ONNX Runtime Web / Ollama / OpenRouter | 浏览器端离线推理 / 自托管或云端 LLM |
| 网络 | WebSocket + REST | 实时 AIS 船舶流 + 其余 HTTP API |
| 存储 | IndexedDB + LocalStorage | 快照基线、用户偏好(无服务端账号依赖) |
| 部署 | Vercel Edge / Docker 栈 / 静态导出 | 官方托管与自托管 |
两个官方强调的架构事实值得注意:
- 无前端框架:整个 UI 是手工 DOM 操作,「no React, Vue, or Angular」,官方称打包体积约 250KB gzipped(来源:官方 Getting Started「No External UI Frameworks」节);
- API 契约用 Protocol Buffers:接口契约以 proto + sebuf HTTP 注解维护,
make generate生成 TypeScript 客户端、服务端与 OpenAPI 文档,CI 有proto-check.yml防漂移(来源:官方 Getting Started「Contributor / full codegen dev」节)。
💡 技术拓展:worldmonitor 的桌面地图选了「deck.gl + MapLibre GL」组合。常见 WebGL/矢量地图方案横向对比——
方案 特点 适用场景 deck.gl + MapLibre GL WebGL 图层族(散点/路径/图标/热力)+ 开源矢量底图,GPU 聚类与拾取 数千~数十万标记的大数据量可视化(worldmonitor 桌面端采用) MapLibre GL 单用 矢量瓦片渲染引擎,样式驱动 常规专题地图 Leaflet 轻量 DOM 栅格地图,生态成熟 少量标记的简单地图 D3.js + TopoJSON SVG 手绘,无 WebGL 依赖 低功耗/无 GPU 环境回退(worldmonitor 移动端采用) worldmonitor 实际采用「桌面 deck.gl+MapLibre GL、移动 D3+TopoJSON 自动回退」的双引擎策略,两引擎共享同一份地图图层目录(map-layer catalog)。
3.2 数据流与分层
官方自托管架构图(来源:仓库 SELF_HOSTING.md「Architecture」节,查询日期 2026-10-25)给出了自托管形态的完整分层:
浏览器 ──→ nginx(:3000)
├── 静态文件(Vite SPA 构建产物)
└── /api/* 反代 → Node.js API(:46123,50+ 路由处理器)
└── Redis REST 代理(:8079,Upstash 兼容协议)
└── Redis(:6379,种子数据缓存)
AIS Relay(WebSocket → AISStream,实时船舶)
关键设计点:
- nginx 与 Node API 同栈编排:官方自托管镜像内由 supervisord 同时拉起 nginx(静态 + 反代)与 Node API 服务,对外只暴露一个端口(默认 3000);
- Redis 只作缓存层:种子脚本(seeders)从上游抓数写入 Redis,应用经 Upstash 兼容 REST 代理读取;代理只放行固定命令白名单(
docker/redis-rest-proxy.mjs),调用方自选 Lua、EVALSHA、SCRIPT一律拒绝; - 无账号即可用:自托管 Docker 模式(
LOCAL_API_MODE=docker)没有 Clerk/Convex 权益后端,浏览器匿名会话由WM_SESSION_SECRET签名,仅GET /api/intelligence/v1/get-country-intel-brief接受该会话,且每日每 IP 限 50 次直连 LLM 调用; - 官方托管侧是 Vercel Edge Functions + Railway 中继 + Upstash Redis 的组合,与自托管栈同一套代码不同部署配置。
3.3 部署形态
官方支持的部署形态(来源:README「Ways to Use It」表、SELF_HOSTING.md、官方 Getting Started,查询日期 2026-10-25):
| 形态 | 获取方式 | 适用场景 |
|---|---|---|
| 官方托管 Web | www.worldmonitor.app 及 5 个变体站 | 零运维直接用 |
| 自托管 Docker 栈 | 仓库 docker compose up -d --build(含 nginx+Node API+Redis+REST 代理+AIS 中继) | 服务器自托管,数据自主可控 |
| 静态导出 | npm run build:pro && npx vite build 产出 dist/ | 只托管 SPA 静态层(服务端 API 走官方或自建) |
| Vercel | 官方文档 Deployment 路径 | 边缘函数形态的近似官方托管 |
| 桌面应用 | Tauri 2 打包,Windows .exe / macOS(Apple Silicon、Intel)/ Linux AppImage | 桌面端离线+在线混合使用 |
| 终端仪表盘 | npx worldmonitor(TUI,含 Braille 世界地图、雷达扫描、鼠标支持、6 套主题) | 无图形界面服务器/SSH 会话 |
| CLI/SDK/MCP | npm install -g worldmonitor;Python worldmonitor-sdk、Ruby worldmonitor、Go sdk/go;MCP 端点 https://worldmonitor.app/mcp(自托管栈为 /api/mcp) | 脚本化、智能体接入 |
四、功能特性
4.1 新闻聚合与简报
- 策展源分级:官方数据源目录按 provider(数据提供方)与 outlet(媒体出口)两级管理。实测调用免 key 工具
get_sources(查询日期 2026-10-25,经官方 MCP 端点):790 个数据 provider(另 171 个被排除)、531 个媒体 outlet,其中 Tier-1 媒体 65 个、Tier-2 250 个;按风险评级 low 105 / medium 126 / high 34,且官方明确「未标注立场≠中立,只是未评估」(provenanceCoverage.caveat原文)。 - AI 合成简报:新闻流经 LLM 合成为「Latest Brief / Daily Market Brief / 世界简报」等面板;LLM 可走 OpenRouter 云端或任意 OpenAI 兼容自托管端点(Ollama、vLLM、llama.cpp,见 SELF_HOSTING.md「Self-Hosted LLM」节),无 API key 时对应面板隐藏,核心功能不受影响。
- 新闻可信度评分:官方文档有独立的 News Credibility Score 方法论页(来源:官方文档站导航「News Credibility Score」)。
4.2 双地图引擎与图层目录
- 桌面端 3D 地球(globe.gl + Three.js)与 WebGL 平面地图(deck.gl + MapLibre GL)共享图层目录;终端 TUI 里还有一套 Braille 字符世界地图 + 雷达扫描动画(来源:README「What It Does」与 cli/README.md)。
- 图层目录覆盖:海底电缆、管道、能源存储与中断、数据中心、港口、机场与延误、航运咽喉点、贸易航线、军事基地、核设施、辐射监测点、航天发射场、军用飞机、卫星、热点地区、冲突区、地震、山火、风暴、气象警报、疫情爆发、抗议、断网事件、船舶密度、交易所、矿场、科技总部、分级填色图等 30+ 类(来源:cli/README.md Map 视图图层清单)。
4.3 国家不稳定指数(CII)与风险评分
- CII v14:对 31 个 Tier-1 国家输出实时不稳定评分、分档与约 24 小时变化(来源:README「What It Does」)。
- Country Resilience Index(国家韧性指数)另有一整套方法论文档:五要素记分卡、金融系统暴露度、粮食库存、资本流动、国防工业基础、矿产集中度等十余篇算法页(来源:官方文档站「Algorithms & Scoring」目录)。
4.4 本地 AI 与多形态入口
- Ollama 本地推理:README 明确「Local AI — run everything with Ollama, no API keys required」;自托管 LLM 只需配
LLM_API_URL/LLM_MODEL指向任意 OpenAI 兼容端点。 - 桌面与终端:Tauri 2 桌面端一份二进制覆盖全部变体站(应用内切换);
npx worldmonitor终端仪表盘 13 个视图(Overview/Map/Brief/News/Markets/Conflict/Air&Sea/Cyber/Climate/Predict/Live/Intel/System),无需 API key。 - 多语言与 RTL:README 有简中/日文/俄文版,UI 支持原生语言源与从右到左排版。
4.5 程序化访问:MCP / REST / CLI / SDK
这是 worldmonitor 与同类仪表盘差异最大的部分——它把「数据出口」做成了一等公民:
| 通道 | 入口 | 认证 | 实测口径(2026-10-25) |
|---|---|---|---|
| MCP 服务器 | 官方 https://worldmonitor.app/mcp;自托管栈 http://<主机>:8140/api/mcp | X-WorldMonitor-Key 请求头(OAuth 仅托管版) | 实测 tools/list 返回 95 个工具 |
| REST API | https://api.worldmonitor.app(OpenAPI 规范 worldmonitor.app/openapi.yaml) | API key(worldmonitor.app/pro 获取) | 官方文档含 HTTP API、Shipping v2、Scenarios 等多组端点 |
| CLI | npm install -g worldmonitor(命令别名 wm),Node 18+,零依赖 ESM | --api-key 或环境变量 WORLDMONITOR_API_KEY;tools/call get_sources 免 key | 实测 v0.2.1,免 key 命令正常返回 |
| SDK | Python worldmonitor-sdk / Ruby worldmonitor / Go sdk/go(均 v0.1.2,2026-10-23 发版) | 同 REST | 官方仓库 sdk/ 目录随源码分发 |
💡 技术拓展:worldmonitor 同时提供 REST、SDK 与 MCP 三种接入方式。三者关系横向对比——
接入方式 面向对象 特点 REST API 通用后端/脚本 标准 HTTP + OpenAPI 规范,最通用 语言 SDK Python/Ruby/Go 开发者 官方零依赖客户端镜像 CLI 能力,免手写 HTTP MCP AI 智能体(Claude、Cursor 等) 一次声明 95 个工具的 JSON Schema,智能体自动发现与调用,支持 JMESPath 服务端投影减负 同一份数据能力三层暴露;做自动化选 REST/SDK,让大模型直接查数据选 MCP。
五、快速开始(最小可用示例)
最快的零部署体验是官方 npm CLI 的免 key 命令——不注册、不配置、装完即用。以下命令均在本文写作环境中实测(Node v24.22.1,worldmonitor CLI v0.2.1,查询日期 2026-10-25)。
npm install -g worldmonitor # 安装官方 CLI(别名 wm;依赖 1 个包,1 秒装完)
worldmonitor --version # 查看版本
实测输出:
added 1 package in 1s
0.2.1
worldmonitor tools # 列出官方 MCP 服务器全部工具(公开,免 key)
实测输出(节选,实测首部):
{
"tools": [
{
"name": "get_country_history",
"title": "Country daily history",
"description": "Read cached daily country CII, resilience and linked headlines. Account depth: Pro 90 days; API/Enterprise 365. ...",
"inputSchema": {
"type": "object",
"properties": {
"country_code": {
"type": "string",
"description": "Assigned ISO alpha-2 country code, such as US or FR."
},
...
全部 95 个工具中,get_sources 是唯一免 key 且不计配额的数据调用(cli/README.md 原文「call get_sources is the sole credential-free, daily-quota-free data call」):
worldmonitor call get_sources # 数据源全景统计(唯一免 key 的数据命令)
实测输出(节选,实测首部):
{
"content": [
{
"type": "text",
"text": "{\"view\":\"summary\",\"summary\":{\"providerCount\":790,\"excludedProviderCount\":171,\"outletCount\":531,\"providersByKind\":{\"feed\":406,\"structured\":291,\"operational-status\":30,\"feed+structured\":63},...",
}
],
"structuredContent": {
"view": "summary",
"summary": {
"providerCount": 790,
"excludedProviderCount": 171,
"outletCount": 531,
...
其余数据命令(world、country、risk、markets、conflicts 等)需订阅 API key(worldmonitor.app/pro 获取);自托管部署后 CLI 可用 --mcp-url 指向自己的栈(http://<主机>:<端口>/api/mcp + 自建 key),完整部署与接线实测见 《worldmonitor v2.11.4 Docker Compose 部署指南》,CLI 子命令与参数全集见 《worldmonitor 常用 CLI 命令与工具详解》。
⚠️ 网络说明:在需要出网代理的服务器上,Node 24 的
fetch默认不读HTTP_PROXY环境变量,直跑worldmonitor tools会报Error: fetch failed;实测给命令前置NODE_USE_ENV_PROXY=1(Node 24 内置代理开关)即可走代理正常返回。无需代理的服务器不受影响。
六、适用场景与限制
6.1 适用场景
- 个人/团队态势屏:大屏常开「世界正在发生什么」——冲突、断网、地震、军机动向、市场异动一屏聚合,免 key 数据即可驱动核心面板;
- OSINT 与研究:790 个带溯源与风险评级的数据 provider、CII/韧性指数方法论全公开,适合做开源情报的起点而非黑盒;
- 智能体数据底座:95 个 MCP 工具 + REST + 三语言 SDK,让 Claude/Cursor 等智能体直接查询全球数据(官方文档有 MCP Quickstart、Tools Reference、JMESPath 投影指南等整章);
- 离线/内网增强:自托管栈 + Ollama 本地 LLM,简报生成不出内网。
6.2 限制与注意
- AGPL-3.0 传染:修改后对外提供服务需开源;闭源商用需另购商业许可(官方明示可谈);
- 深层数据要订阅:免 key 层只覆盖地震/天气/自然事件/预测市场/加密货币/海底电缆/网络威胁等公共源;Finnhub 股票、EIA 石油、ACLED 冲突、AISStream 船舶、OpenSky 军航、Cloudflare Radar 断网(付费)等需自备 key 或订阅;
- 自托管管理面收窄:Docker 模式下
/api/local-管理路由一律 403,运维设置只能走 Compose 环境变量重建(SELF_HOSTING.md 明文规定); - 迭代极快:四天三个补丁版本,升级需逐版看 Release Notes;
REDIS_TOKEN等安全默认值近期刚被移除(#3804),老克隆升级必须补密钥; - 无移动原生 App:移动端是浏览器 PWA + SVG 地图回退,桌面端无 Linux deb/rpm 包(AppImage 形态)。
七、同类选型对比(量化)
对「仪表盘/起始页」赛道四个高星项目做量化对比。worldmonitor 数据来自仓库页与实测(查询日期 2026-10-25);Glance/homepage/Dashy 的星数、最新版本与许可取自 shields.io github/stars、github/v/release、github/license 徽章(查询日期 2026-10-25):
| 维度 | worldmonitor | Glance | homepage | Dashy |
|---|---|---|---|---|
| GitHub Stars | 89.4k(仓库页 89,438) | 38k | 33k | 27k |
| 最新版本 | v2.11.4(2026-10-24) | v0.8.7 | v2.7.0 | v4.9.0 |
| 许可证 | AGPL-3.0-only(CLI 客户端 MIT) | AGPL-3.0 | GPL-3.0 | MIT |
| 主语言 | TypeScript(无 UI 框架,~250KB gzipped) | Go | TypeScript | TypeScript |
| 产品定位 | 全球情报/态势感知仪表盘 | 信息流聚合起始页 | 应用导航/服务门户起始页 | 高可定制仪表盘/起始页 |
| 内置数据源 | 790 provider / 531 outlet(免 key 可用核心层) | 用户自配 RSS/日历/天气等小组件 | 书签 + 服务状态探测 | 用户自配 80+ 小组件 |
| AI 能力 | LLM 简报/预测/验证(Ollama 本地或 OpenRouter)+ 浏览器端 ONNX | 无 | 无 | 无 |
| 地图可视化 | 3D 地球 + WebGL 地图双引擎 + TUI 字符地图 | 无 | 无 | 无 |
| 程序化访问 | MCP(95 工具)+ REST(OpenAPI)+ CLI + Python/Ruby/Go SDK | REST 小组件源 | REST API(有限) | 页面配置为主 |
| 部署形态 | 托管站 / 自托管 Compose / 静态导出 / Tauri 桌面 / TUI | 单二进制或 Docker | Docker / Node | Docker / Node |
关键差异与选型解读:
- worldmonitor 的星数(89.4k)约为其余三者之和的 80%,且差距主要来自 2026 年内——它是本表唯一「数据源内置」的产品,其余三者的价值都在「你自己配置源/入口」;
- 四者不是互斥关系:要「世界发生了什么」选 worldmonitor;要「我的信息流+我的入口」选 Glance/homepage/Dashy。worldmonitor 自身也提供
worldmonitor web打开网页仪表盘、TUI 终端屏两种人机界面,与导航门户可并存在同一浏览器标签体系里。
八、参考链接
- GitHub 仓库:https://github.com/koala73/worldmonitor (v2.11.4,查询日期 2026-10-25)
- Releases 订阅:https://github.com/koala73/worldmonitor/releases.atom
- 官方文档站 Getting Started(含技术栈、安装三通道、API 依赖表):https://www.worldmonitor.app/docs/getting-started
- 自托管指南(仓库内):https://github.com/koala73/worldmonitor/blob/main/SELF_HOSTING.md
- 环境变量样例(仓库内,1297 行):https://github.com/koala73/worldmonitor/blob/main/.env.example
- REST OpenAPI 规范:https://worldmonitor.app/openapi.yaml
- MCP 服务器与文档:https://worldmonitor.app/mcp 、https://www.worldmonitor.app/docs/mcp-overview
- npm CLI:https://www.npmjs.com/package/worldmonitor
- 许可证全文:https://github.com/koala73/worldmonitor/blob/main/LICENSE (AGPL-3.0)
- 星数/版本/许可徽章取证:https://img.shields.io/github/stars/koala73/worldmonitor 等(查询日期 2026-10-25)