Skip to main content

Standards map

Arco sits inside a broader open-standards landscape. This page summarizes the posture from docs/open-standards-map.md in the Kosmos prototype repo.

Three postures

PostureMeaning
AdoptUse an existing open standard as-is
BridgeKeep internal format; map at boundaries
DefineArco publishes the spec — no adequate existing standard

Where Arco defines

SubsystemArco's role
Generative UI languageGrammar, vocabulary, binding contract
Component vocabularyJSON Schema profiles (chat vs reactive app)
Live data bindingQuery/Mutation → host tools without LLM round-trip
Patch semanticsStatement-level merge for agent-driven app evolution
Design tokens--arco-* with planned DTCG export
Block registryManifest shape, adaptivity, validation

Where Arco adopts

StandardUse
MCPTool interop (client + outward server)
ACPExternal coding agents (Claude Code, Codex, Gemini)
JSON SchemaParameter schemas across tools and intents
Markdown + GFMChat prose
WebRTC / PipecatVoice transport

Where Arco bridges

AreaBridge
Design tokensCSS vars today → DTCG file as canonical source
Agent eventsCustom SSE stream; track AG-UI for future mapping
Calendar dataCustom os.calendar@1 + planned iCal import/export

Arco open standard modules

The nine "define" areas group into four spec modules:

  1. UI language + binding — grammar, profiles, host contract, patches
  2. Capabilities (os.**) — versioned intent contracts exposed as MCP tools
  3. App packaging + bridge — manifest + postMessage/HTTP host API
  4. Agent surface — event stream and cursor protocol

Generative stack today

@openuidev/lang-core → grammar (future: Arco spec)
@openuidev/react-ui → vocabulary (future: block registry)
@openuidev/react-lang → renderer (reference impl)
Arco tokens + ui/ → theming and shell primitives

Fork trigger: when upstream blocks the binding contract or React decoupling — not for styling differences alone.

For the full subsystem table, see docs/open-standards-map.md in the Kosmos prototype repository.