wity.ai /open stack

The primitives
powering Wity.

These have come out of building Wity — the primitives all our products build on. A graph engine. A scene composition library. A language for agent communication. They're open because they solve problems outside our products too.

Knowledge Graph

wity-graph

A composable headless graph engine.

Docs

Three strictly separated layers — headless state, DOM-aware computation, and playback control — so your rendering logic never bleeds into your graph logic. Framework-agnostic. Works with React, Svelte, or vanilla JS.

  • Zero-DOM headless state layer
  • Pan / zoom with configurable bounds
  • SVG rendering with keyed diffing
  • Timeline playback for agentic workflows
  • Actor registries for multi-user presence
  • Extensible node and link type systems

Scene Graph

wity-scene

Deterministic scene composition. f(scene, t) → frame.

Docs

Treats scenes as pure functions of time. Call evaluate(scene, t) at any point — no mutation, no playback state to manage. Runs in the browser and Node.js. Handles text, shapes, images, video, audio, and timed cues through a single unified pipeline.

  • Deterministic evaluation — zero runtime side-effects
  • Browser and Node.js compatible
  • Undo / redo and selection management
  • Multi-format rendering pipeline
  • Server-side video compilation via FFmpeg
  • XML scene document model

DIAL

Dialectic Interagent Language

An XML language for structured human–agent exchange.

Docs

Eight element types — inform, ask, suggest, execute, acknowledge, declare, delegate, phatic — that encode what agents actually do through communication, not just what they say. Native parallel execution. Multi-party by design.

  • Eight structural element types
  • Blocking and non-blocking interaction modes
  • Parallel execution with observe / yield dependencies
  • Native multi-party participation
  • Execution across shell, Python, HTTP
  • Grounded in classical dialectic tradition

All open source

Build with it. Extend it.Use it however you want.