오픈 소스 프로젝트 #130: worldmonitor — 73k 스타를 보유한 AI 기반 지정학적 모니터링 실시간 글로벌 인텔리전스 대시보드
요약
worldmonitor는 AI 기반 뉴스 어그리게이션, 지정학적 모니터링, 인프라 추적을 통합한 실시간 글로벌 인텔리전스 대시보드입니다. MCP 서버와 Ollama 지원을 통해 AI 에이전트가 실시간 데이터를 쿼리할 수 있는 강력한 오픈 소스 플랫폼을 제공합니다.
핵심 포인트
- 73k 이상의 스타를 보유한 급성장 중인 오픈 소스 프로젝트
- MCP 서버 지원으로 AI 에이전트와의 프로그래밍 방식 연동 가능
- Ollama를 통한 로컬 AI 통합으로 API 키 없이 사용 가능
- 3D Globe 및 WebGL 기반의 고도화된 시각화 엔진 탑재
- 지정학, 금융, 에너지 등 다양한 도메인별 사이트 변형 지원
서론 (Introduction)
"실시간 글로벌 인텔리전스 대시보드 — 통합된 상황 인식 인터페이스 내에서 AI 기반 뉴스 어그리게이션 (News Aggregation), 지정학적 모니터링, 그리고 인프라 추적을 제공합니다."
이 글은 "One Open Source Project a Day" 시리즈의 130번째 기사입니다. 오늘의 프로젝트는 worldmonitor입니다. 이는 AI 기반 뉴스 어그리게이션 (News Aggregation), 지정학적 모니터링, 그리고 인프라 추적을 하나의 통합된 상황 인식 인터페이스로 통합한 실시간 글로벌 인텔리전스 대시보드입니다.
73,260개의 스타 (Stars). 2026년 1월 생성. 올해 GitHub에서 가장 빠르게 성장하는 오픈 소스 프로젝트 중 하나입니다. 프로젝트의 토픽 (Topics) 목록에 있는 한 단어가 이 프로젝트의 포지셔닝을 잘 보여줍니다: palantir — 이는 이 프로젝트가 Palantir에 대한 오픈 소스 방식의 해답임을 명시적으로 선언하는 것입니다.
학습 내용 (What You'll Learn)
- worldmonitor의 6가지 핵심 기능 모듈
- 듀얼 맵 엔진 (3D globe + WebGL flat map) 및 56가지 레이어 유형 뒤에 숨겨진 설계 로직
- 국가 불안정 지수 (Country Instability Index, CII v8) 점수 산정 메커니즘
- 로컬 AI 통합: API 키가 필요 없는 완전한 Ollama 지원
- MCP 서버, REST API, CLI, 그리고 다국어 SDK 액세스 패턴
- 6가지 사이트 변형 (world / tech / finance / commodity / energy / happy)의 설계 근거
사전 요구 사항 (Prerequisites)
- 웹 애플리케이션에 대한 기본적인 이해
- 지정학, 금융 시장, 또는 OSINT (Open-Source Intelligence, 공개 출처 정보)에 대한 일반적인 관심
프로젝트 배경 (Project Background)
개요 (Overview)
worldmonitor는 다차원적인 글로벌 데이터를 단일 인터페이스로 통합하는 인텔리전스 플랫폼입니다. 이 플랫폼은 동시에 AI 에이전트를 위한 데이터 백엔드 역할을 합니다. MCP 서버 엔드포인트를 노출하여, MCP 호환 AI 도구가 프로그래밍 방식으로 실시간 글로벌 인텔리전스 데이터를 쿼리할 수 있도록 합니다.
저자 / 팀 (Author / Team)
- 저자 (Author): Elie Habib (koala73)
- 언어 (Language): TypeScript
- 라이선스 (License): AGPL-3.0-only
- 웹사이트 (Website): worldmonitor.app
프로젝트 통계 (Project Stats)
- ⭐ GitHub Stars: 73,260+
- 🍴 Forks: 10,984+
- 📄 License: AGPL-3.0
- 📅 Created: 2026-01-08
빠른 시작 (Quick Start)
git clone https://github.com/koala73/worldmonitor.git
cd worldmonitor
npm install
...
localhost:3000을 여세요. 실행을 위해 필요한 환경 변수(environment variables)는 없습니다 — 특정 데이터 소스는 API 인증 정보(credentials)가 필요하지만, 핵심 인터페이스는 즉시 작동합니다.
특정 사이트 변형(variant)을 시작하려면:
npm run dev:tech # tech.worldmonitor.app
npm run dev:finance # finance.worldmonitor.app
npm run dev:commodity # commodity.worldmonitor.app
...
또는 설치 없이 호스팅된 버전을 직접 사용하세요:
- worldmonitor.app — 일반 (지정학/군사/재난)
- tech.worldmonitor.app — 기술 인텔리전스 (tech intelligence)
- finance.worldmonitor.app — 금융 시장 (financial markets)
- commodity.worldmonitor.app — 원자재 (commodities)
- energy.worldmonitor.app — 에너지 시장 (energy markets)
- happy.worldmonitor.app — 긍정적인 뉴스 (다른 5개 서비스에 대한 의도적인 균형추 역할)
6가지 핵심 모듈 (Six Core Modules)
1. AI 뉴스 애그리게이션 엔진 (AI News Aggregation Engine)
**15개 카테고리에 걸친 500개 이상의 큐레이션된 피드(feeds)**가 AI를 통해 요약(briefs)으로 합성됩니다.
주요 기능:
- 교차 스트림 상관관계 (Cross-stream correlation): 군사, 경제, 재난 및 에스컬레이션(escalation) 신호를 수렴하여 여러 데이터 차원 간의 교차점을 자동으로 감지합니다.
- 로컬 AI (Local AI): 모든 AI 합성을 Ollama를 통해 로컬에서 실행합니다 — 클라우드 API 키가 전혀 필요하지 않습니다.
- 25개 언어: 모국어 피드 및 RTL(Right-to-Left) 레이아웃 지원
2. 이중 지도 엔진 + 56가지 레이어 유형 (Dual Map Engine + 56 Layer Types)
worldmonitor에서 시각적으로 가장 눈에 띄는 기능입니다:
3D 지구 모드 (3D globe mode) (globe.gl + Three.js):
- 회전/확대가 가능한 구형 지구 렌더링
- 지구 위에 오버레이된 실시간 이벤트 주석(annotations)
WebGL 평면 지도 모드 (WebGL flat map mode) (deck.gl + MapLibre GL):
- GPU 가속 플랫 맵 렌더링 (GPU-accelerated flat map rendering)
- 지역적 이벤트 분포 분석에 더 적합
56가지 지도 레이어 유형, 포함 사항:
- 군사 활동 핫스팟 (Military activity hotspots)
- 자연재해 (지진, 홍수, 산불)
- 인프라 상태 (전력망, 항구, 공항)
- 실시간 항공 추적 (Wingbits의 ADS-B 데이터)
- 해상/해운 경로
- 사이버 공격 소스 분포
- 기후/환경 데이터
3. 국가 불안정 지수 (Country Instability Index, CII v8)
worldmonitor의 독자적인 **국가 불안정 지수 (Country Instability Index, CII)**로, 서버 권한 방식(server-authoritative)이며 현재 버전 8입니다:
- 31개 Tier-1 국가를 대상으로 함
- 다차원 신호 집계: 정치적 불안, 무력 충돌, 경제적 스트레스, 사회적 이벤트 등
- 점수 산정 알고리즘은 서버 측에서 실행됩니다. 클라이언트는 독립적으로 계산하는 대신 결과를 소비합니다 (모든 사용자가 일관되고 정전적인(canonical) 점수를 보도록 보장).
- 사용자에게 "현재 이 국가가 얼마나 불안정한가?"에 대한 정량화된 답변을 제공합니다.
이는 worldmonitor를 단순한 뉴스 애그리게이터(news aggregator)와 차별화하는 기능 중 하나입니다. 단순히 뉴스를 노출하는 것에 그치지 않고, 알고리즘을 사용하여 정보를 정량화된 상황 인식(situational awareness) 지표로 변환합니다.
4. 금융 레이더 (Finance Radar)
- 29개 증권 거래소의 실시간 데이터
- 원자재 (석유, 금, 천연가스 등)
- 암호화폐 시장
- 7개 신호 시장 복합 지표 (7-signal market composite): 다차원 금융 신호를 단일 리스크/기회 점수로 결합
금융 변형 버전 (finance.worldmonitor.app)은 금융 데이터를 기본 뷰로 격상시켜, 시장의 움직임을 지정학적 이벤트와 교차 참조하기 쉽게 만듭니다.
5. 네이티브 데스크톱 앱 (Tauri 2)
Tauri 2 (Rust + WebView)를 기반으로 구축된 Windows, macOS (Apple Silicon / Intel), Linux (AppImage)용 네이티브 바이너리:
- 앱 내에서 변형 버전 간 전환이 가능한 단일 Tauri 바이너리
- Node.js 사이드카(sidecar)가 API 로직을 처리
공식 API를 통한 직접 다운로드 링크:
6. 65개 이상의 데이터 소스 통합 (Data Source Integrations)
다음 분야의 외부 제공업체 통합:
- 지정학적 인텔리전스 (Geopolitical intelligence)
- 금융 시장 데이터 (Financial market data)
- 에너지 (석유/가스, 재생 에너지)
- 기후 및 환경
- 항공 (ADS-B 실시간 항공편 추적)
- 사이버 보안 이벤트 (Cybersecurity events)
- 군사 활동 (Military activity)
- 인프라 상태 (Infrastructure status)
- 뉴스 인텔리전스 (News intelligence)
35개 소스 그룹에 걸친 500개 이상의 큐레이션된 피드(feeds) 및 신선도 모니터링.
기술 아키텍처 (Technical Architecture)
프론트엔드 (Frontend)
Vanilla TypeScript + Vite
│
├── 3D 지구본 (3D globe): globe.gl + Three.js
...
주목할 점: React/Vue/Angular를 사용하지 않은 순수 TypeScript이며, Vite로 구축되었습니다. 오늘날의 프론트엔드 생태계에서는 비교적 흔치 않은 선택이지만, 성능에 대한 직접적인 제어권을 제공합니다.
AI/ML 레이어 (AI/ML Layer)
로컬 추론 (Local inference): Ollama (완전 로컬, API 키 불필요)
클라우드 추론 (Cloud inference): Groq / OpenRouter (선택 사항)
브라우저 사이드 (Browser-side): Transformers.js (경량화, 서버 불필요)
API 계약 레이어 (API Contract Layer)
이례적인 아키텍처 선택: 모든 API 계약에 Protocol Buffers 사용:
- 281개의 proto 파일
- 35개의 서비스 정의 (service definitions)
- sebuf HTTP 어노테이션 (annotations)
배포 레이어 (Deployment Layer)
60개 이상의 Vercel Edge Functions (서버리스 엣지 컴퓨팅)
Railway 릴레이 (relay service)
Tauri (데스크톱 앱)
...
캐싱 전략: Redis (Upstash) + 3계층 캐시 (three-tier cache) + CDN + 서비스 워커 (Service Worker).
프로그래밍 방식의 접근: AI 에이전트를 위해 구축됨
worldmonitor는 여러 가지 접근 경로를 통해 AI 에이전트를 위한 데이터 백엔드로서 자신을 명확히 포지셔닝합니다:
MCP 서버 (MCP Server)
엔드포인트 (Endpoint): https://worldmonitor.app/mcp
프로토콜 (Protocol): Streamable HTTP MCP
인증 (Auth): X-WorldMonitor-Key 헤더 또는 OAuth
tools/list는 공개되어 있어(사용 가능한 모든 도구를 탐색하는 데 키가 필요 없음), tools/call은 API 키가 필요합니다.
CLI
# 설치 불필요 — 모든 MCP 도구 목록 표시 (키 불필요)
npx worldmonitor tools
...
다국어 SDK (Multi-Language SDKs)
| 언어 (Language) | 패키지 (Package) | 설치 (Install) |
|---|---|---|
| Python | worldmonitor-sdk | pip install worldmonitor-sdk |
| ... | ||
| 모든 SDK는 CLI의 기능을 그대로 반영하는 의존성 없는 (zero-dependency) 클라이언트 라이브러리입니다. |
에이전트 발견 파일 (Agent Discovery Files)
worldmonitor는 최신 에이전트 발견 (agent-discovery) 컨벤션을 따르므로, AI 도구들이 수동 설정 없이도 자동으로 그 기능을 발견하고 설명할 수 있습니다.
6가지 변형 설계 로직 (The 6-Variant Design Logic)
단일 코드베이스로부터 서로 다른 위치를 가진 6개의 사이트를 생성하는 것은 살펴볼 가치가 있는 제품 설계 선택입니다:
| 변형 (Variant) | URL | 주요 관점 (Primary lens) |
|---|---|---|
| world (일반) | worldmonitor.app | 지정학, 군사, 재난, 글로벌 역학 |
| ... |
"happy" 변형의 존재는 자기 인지 (self-awareness)를 나타냅니다. 나머지 5개의 변형은 모두 갈등, 리스크, 변동성과 같은 부정적인 신호를 증폭시킵니다. "happy"는 명시적인 헤지 (hedge)이자, 글로벌 인텔리전스 대시보드가 정의상 사용자들을 불안하게 만들도록 설계될 수밖에 없다는 점을 정직하게 인정한 것입니다. 이에 대한 균형추를 출시한 것은 매우 사려 깊은 제품 결정입니다.
리소스 (Resources)
공식 링크 (Official Links)
- 🌟 GitHub: koala73/worldmonitor
- 🌐 웹사이트 (Website): worldmonitor.app
- 📖 문서 (Docs): worldmonitor.app/docs/documentation
- 🚀 시작하기 (Getting Started): worldmonitor.app/docs/getting-started
- 🏗️ 아키텍처 (Architecture): worldmonitor.app/docs/architecture
- 📦 npm CLI: npmjs.com/package/worldmonitor
- 💬 Discord: discord.gg/re63kWKxaz
요약 (Summary)
worldmonitor는 다소 과도해 보일 수 있지만 결과적으로 탄탄하게 실행된 무언가를 수행합니다. 바로 Palantir급의 인텔리전스 대시보드 (intelligence dashboard)를 오픈 소스로 공개한 것입니다. 약 3개월 만에 73k개의 스타 (Stars)를 확보한 것은 진정한 미충족 수요를 나타냅니다. 역사적으로 글로벌 상황 인식 (global situational awareness) 도구는 상용 폐쇄형 소스 제품들의 독점 영역이었습니다.
기억할 만한 세 가지 설계 결정:
AI 에이전트 우선 설계 (AI-agent-first design): MCP 서버 엔드포인트, llms.txt, 에이전트 기술 매니페스트 (agent-skills manifest), 그리고 다국어 SDK는 사후에 추가된 플러그인이 아닙니다. 이들은 웹 인터페이스와 함께 일급 시민 (first-class) 액세스 계층으로 설계되었습니다. worldmonitor는 인간을 위한 대시보드일 뿐만 아니라, AI 에이전트가 실시간 글로벌 인텔리전스를 위해 쿼리할 수 있는 데이터 계층 (data layer)입니다.
로컬 AI 우선 (Local AI first): Ollama 지원은 전체 AI 기능 체인이 클라우드 API 의존성 없이 기기 내에서 완전히 실행될 수 있음을 의미합니다. 민감한 지정학적 질의 (geopolitical queries)에 있어 이는 의미 있는 개인정보 보호 보장입니다.
단일 코드베이스, 다중 변체 (Single codebase, multiple variants): 하나의 코드베이스로부터 서로 다른 위치에 있는 6개의 사이트를 생성하는 것은, 팀이 모든 데이터를 하나의 압도적인 인터페이스에 쏟아붓는 대신 타겟 오디언스 세분화 (audience segmentation)에 대해 명확하게 고민했음을 보여줍니다.
서버 권한 기반 CII 스코어링 (Server-authoritative CII scoring): 각 클라이언트가 자체적인 불안정성 지수 (instability index)를 계산하게 하는 대신, 스코어링 알고리즘이 서버 측에서 실행되며 클라이언트는 정전 (canonical) 결과를 소비합니다. 이는 일관성을 보장하고 클라이언트가 서로 다른 알고리즘 버전을 실행함으로써 발생하는 파편화를 방지합니다.
지정학을 추적하거나, 글로벌 사건과 시장 움직임을 상관 분석 (correlate)해야 하거나, 실시간 글로벌 데이터가 필요한 AI 에이전트 파이프라인을 구축하고 있다면 — worldmonitor는 현재 이 분야에서 가장 기능적으로 완성된 오픈 소스 옵션입니다.
실제 기업 워크플로우에 대해 검증된 AI 에이전트 및 기술의 큐레이션 마켓플레이스인 PrimeSkills를 탐색해 보세요. 과장 없이, 실제로 작동하는 것들만 제공합니다.
더 많은 통찰력과 흥미로운 제품을 보려면 저의 개인 사이트를 방문해 주세요.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기