{"id":51280203,"url":"https://github.com/ruvnet/worldgraph","last_synced_at":"2026-06-30T01:03:13.552Z","repository":{"id":365305920,"uuid":"1271497073","full_name":"ruvnet/worldgraph","owner":"ruvnet","description":"Privacy-aware environmental digital twin for ambient/RF sensing in Rust — a typed, provenance-tracked graph of rooms, sensors, people \u0026 beliefs, geospatially grounded with predictive occupancy (OccWorld). ADR-139.","archived":false,"fork":false,"pushed_at":"2026-06-27T03:46:51.000Z","size":167,"stargazers_count":7,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-27T05:12:31.873Z","etag":null,"topics":["ambient-intelligence","digital-twin","edge-computing","environmental-monitoring","geospatial","graph","knowledge-graph","occupancy-grid","petgraph","provenance","robotics","rust","sensor-fusion","smart-home","spatial-computing","wifi-sensing","world-model"],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ruvnet.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-16T18:11:30.000Z","updated_at":"2026-06-27T04:06:57.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ruvnet/worldgraph","commit_stats":null,"previous_names":["ruvnet/worldgraph"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ruvnet/worldgraph","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruvnet%2Fworldgraph","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruvnet%2Fworldgraph/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruvnet%2Fworldgraph/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruvnet%2Fworldgraph/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ruvnet","download_url":"https://codeload.github.com/ruvnet/worldgraph/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruvnet%2Fworldgraph/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34948227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-29T02:00:05.398Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ambient-intelligence","digital-twin","edge-computing","environmental-monitoring","geospatial","graph","knowledge-graph","occupancy-grid","petgraph","provenance","robotics","rust","sensor-fusion","smart-home","spatial-computing","wifi-sensing","world-model"],"created_at":"2026-06-30T01:03:12.755Z","updated_at":"2026-06-30T01:03:13.541Z","avatar_url":"https://github.com/ruvnet.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# worldgraph\n\n**A privacy-aware environmental digital twin — and an AI agent that helps you build one.**\n\n`worldgraph` is two things in one project:\n\n1. **A Rust library** that models a physical space as a typed, provenance-tracked graph — rooms, zones, sensors, people, and *beliefs* about what's happening — geospatially grounded and able to **forecast occupancy**.\n2. **An AI coding agent** (`npx worldgraphs`) — architect → implement → review → test — that helps you build digital twins and spatial/sensor applications on top of it.\n\n\u003csub\u003e**Keywords:** digital twin · world model · environmental digital twin · spatial computing · indoor positioning · sensor fusion · occupancy modeling · ambient intelligence · knowledge graph · scene graph · WiFi sensing · RF sensing · privacy-by-design · provenance · geospatial · occupancy forecasting · Rust · AI coding agent · agent harness\u003c/sub\u003e\n\n[![npm](https://img.shields.io/npm/v/worldgraphs.svg)](https://www.npmjs.com/package/worldgraphs)\n[![License](https://img.shields.io/badge/license-MIT%2FApache--2.0-blue.svg)](#license)\n[![Rust](https://img.shields.io/badge/rust-stable-orange.svg)](#-the-library--rust-crates)\n\n---\n\n## 🌐 Live demo — the twin in your browser\n\n[![WorldGraph × SuperSplat — live 3D demo](https://raw.githubusercontent.com/ruvnet/worldgraph/main/docs/demo.png)](https://ruvnet.github.io/worldgraph/)\n\n**▶ [Open the live demo →](https://ruvnet.github.io/worldgraph/)**\n\nThe WorldGraph semantic twin rendered in 3D over a [SuperSplat](https://github.com/playcanvas/supersplat)-style scene — compiled to **WebAssembly** and running **entirely client-side** (no backend). Drag to orbit, click any element for its privacy-aware **provenance card**, and hit *Simulate* to see the OccWorld occupancy forecast. Person tracks carry no identity by construction.\n\n---\n\n## Two ways to use it\n\n### 🤖 The AI agent — `npx worldgraphs`\n\nA focused coding harness (architect / implementer / reviewer / test-writer) that drops into your AI host and helps you design, build, review, and test digital-twin code.\n\n```bash\nnpx worldgraphs init       # wire the agents into your AI host (Claude Code, Codex, Copilot, …)\nnpx worldgraphs doctor     # health check\n\n# or install globally:\nnpm i -g worldgraphs\nworldgraphs init\n```\n\n\u003e **Why `worldgraphs` (plural)?** npm reserves the bare name `worldgraph` (too similar to\n\u003e the existing `world-graph` package), so the npm package is published as `worldgraphs`.\n\u003e You can also run it straight from this repo: `npx ruvnet/worldgraph`.\n\nThen ask your host to design or implement a change — the four agents run an opinionated pipeline so you get a plan, clean code, a bug-hunting review, and the missing tests. Ships adapters for **9 hosts**: Claude Code, Codex, Copilot, OpenCode, GitHub Actions, pi-dev, Hermes, OpenClaw, RVM.\n\n| Agent | Role |\n|-------|------|\n| **architect** | Designs the change before any code is written |\n| **implementer** | Writes code that matches the surrounding style |\n| **reviewer** | Hunts correctness bugs in the diff |\n| **test-writer** | Adds the missing tests for the change |\n\n### 📦 The library — Rust crates\n\n```bash\ncargo add wifi-densepose-worldgraph   # the typed digital-twin graph\n```\n\n| crate | role |\n|-------|------|\n| [`wifi-densepose-geo`](./wifi-densepose-geo) | **Geospatial grounding** — IP geolocation, satellite tiles, SRTM elevation, OSM buildings/roads, ENU↔geo transforms |\n| [`wifi-densepose-worldgraph`](./wifi-densepose-worldgraph) | **The digital twin** — a `petgraph` graph of typed nodes + relations; provenance-mandatory semantic beliefs; JSON persistence |\n| [`wifi-densepose-worldmodel`](./wifi-densepose-worldmodel) | **Predictive layer** — bridges person-track history to an OccWorld occupancy model and returns trajectory priors |\n\n---\n\n## What is an \"environmental digital twin\"?\n\nA digital twin is a live, queryable model of a real space. `worldgraph` builds one as a **typed graph** — rooms, zones, walls, doorways, sensors, RF links, person tracks, object anchors, events, and semantic-state *beliefs* — connected by typed relations (`observes`, `located_in`, `adjacent_to`, `supports`, `contradicts`, `derived_from`, `privacy_limited_by`).\n\nIt stores **what is believed about the space**, not raw sensor frames — and **every belief is auditable** back to the evidence that produced it.\n\n### What makes it trustworthy\n\n- **Provenance is mandatory** — every semantic belief carries `SemanticProvenance` (signal evidence + model + calibration + privacy decision). You can't record a belief without recording *why*.\n- **Privacy is first-class** — a `PrivacyRollup` and `privacy_limited_by` relations make the privacy posture of any belief queryable; downstream consumers respect it.\n- **Deterministic \u0026 versioned** — a serde enum model → a deterministic, schema-versioned wire layout; `to_json` / `from_json` round-trips the whole graph.\n- **Geospatially grounded** — ties the local scene to real coordinates, terrain, and map features.\n- **Predictive** — forecasts occupancy and emits trajectory priors that improve downstream tracking.\n\n### Where it sits\n\n```\nsensor fusion  →  worldgraph (digital twin)  →  semantic / agent layer\n  fused beliefs     typed belief graph            queries, reasoning, eval\n                          │\n                          └─→ worldmodel → occupancy forecast / trajectory priors\n```\n\nPart of the [RuView / wifi-densepose](https://github.com/ruvnet/wifi-densepose) ecosystem (ADR-139).\n\n## Build\n\n```bash\ncargo build \u0026\u0026 cargo test      # the Rust library\nnpm install \u0026\u0026 npm test        # the agent harness\n```\n\n## License\n\nDual-licensed **MIT OR Apache-2.0** — see [`LICENSE-MIT`](./LICENSE-MIT) and [`LICENSE-APACHE`](./LICENSE-APACHE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fruvnet%2Fworldgraph","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fruvnet%2Fworldgraph","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fruvnet%2Fworldgraph/lists"}