What KDCube Is
KDCube is a self-hosted platform and SDK for packaging AI applications into deployable apps and running them in isolated environments. tenant/project is one environment, one environment can host many apps, and one app is one end-to-end application unit that can combine backend logic, APIs, widget UI, main UI, agents, tools, ISO runtime execution, scheduled work, named-service providers, and scene surfaces. Many apps use the built-in ReAct subsystem with tools, skills, continuous conversations, a sources pool, ANNOUNCE, a signals board, and an event timeline. The platform then provides the core services that run that model: Ingress (API gateway, auth, SSE emitter) and Processor/Proc (app execution, queue worker, integrations API).
App UI surfaces are served by KDCube the same way app APIs and MCP endpoints are served. An app can expose widget UI and/or main UI; a frontend may display those surfaces directly or embed them, for example in the KDCube control plane. The iframe is only one display mechanism, not a separate app concept.
bundle_id, bundles.yaml, @bundle_entrypoint, or /bundles/....The newer layer is the object ecosystem: apps can expose objects through named-service namespaces, emit external events, provide block production/rendering policies, and join an interactive scene with chat, canvas, memory, tasks, or other surfaces. See Object Ecosystem & Ontologic Contracts.
System at a Glance
Key Terms
| Term | Description |
|---|---|
| App | Packaged KDCube application registered internally with @bundle_entrypoint. It contains agent logic, tools, skills, widget UI, main UI, operations, named-service providers, and optional public endpoints. |
| Named service | Namespace-owned object provider. It can publish about/schema metadata, search scopes, object actions, default open effects, and block production/rendering policies. |
| Scene | Interactive host that composes chat, canvas, memory, task widgets, and other surfaces through context pins and object actions. |
| Event bus / Data bus | Event bus delivers live and recorded UI-visible events. Data bus carries typed subsystem payloads and coordination messages between platform and app surfaces. |
| Block policy | Provider-owned rule for producing or rendering bounded timeline blocks from external objects and events. |
| Ingress | API gateway service: auth, SSE streaming, task enqueueing, rate limiting. Handles all inbound traffic before the app sees it. |
| Processor / Proc | Queue worker: executes apps, hosts the Operations REST API. Loads app singletons and calls execute_core() per turn. |
| Timeline | Rolling cross-conversation context persisted as artifact:conv.timeline.v1. Ordered blocks (oldest → newest) streamed as SSE events. Grows across turns; compacted when context budget is reached. The turn log is the per-turn portion appended each turn. |
| ReAct Agent | Autonomous timeline-first loop with bounded iterations. Plan is a tool — not a separate component. No coordinator needed. |
| Tenant / Project | Multi-tenancy units. All data, config, apps, and budgets are scoped to tenant + project. Each tenant gets an isolated schema in PostgreSQL. |