On 2026-10-15 Thesys shipped OpenUI 1.0 (MIT, ~11K GitHub stars). OpenUI Lang 1.0 adds custom actions (defineAction), custom functions (defineFunction), library.extend and a stored-message format, so agents can stream interactive cards, forms and charts instead of walls of text. In the project's tiktoken benchmark, seven UI scenarios total 4,800 tokens, 52.8% fewer than Vercel JSON-Render. The 1.0 features currently require the React renderer.

Key Takeaways

  • ✓Token efficiency (project benchmark, tiktoken GPT-5 encoder): 7 scenarios total 4,800 tokens vs Vercel JSON-Render 10,180 (-52.8%) and Thesys C1 JSON 9,948 (-51.7%); up to -67.1% on a contact form (benchmarks)
  • ✓New in 1.0: defineAction custom actions reach the host onAction with typed params; defineFunction adds custom @ functions whose failed calls evaluate to null instead of breaking the page
  • ✓Compatibility: Vue/Svelte/Angular renderers stay on 0.4; 1.0 language features need the React renderer for now
  • ✓Upgrade gotcha: bump lang-core, react-lang and the prompt-generating server together; a 1.0 prompt teaches bare action steps that 0.x clients won't run
  • ✓Traction: ~11K stars six months after open-sourcing (MIT); the founder's launch post drew ~1.18M impressions and 1,800+ bookmarks (GitHub)
OpenUI 1.0 ships: the open-source generative-UI standard adds custom actions and functions; its own benchmark shows ~52% fewer tokens than JSON render formats
🖼️Official Media
Click to view high-res
🧭

Turn your technical choice into a development budget

Compare 40 dev plans & simulate token costs vs $20/mo subscriptions

🔬

In-Depth Technical Analysis

Background

Models got smarter but the interface regressed to a textbox. Thesys founder Rabi Shanker Guha announced OpenUI 1.0 on 2026-10-15, six months after open-sourcing OpenUI (MIT, ~11K stars). Models emit OpenUI Lang, a compact streaming UI language, and the client renders it with your registered component library as cards, forms and charts.

What's new

OpenUI Lang 1.0 adds defineAction (app-defined actions delivered to onAction with typed params; the renderer never runs them), defineFunction (custom @ functions with schema-checked args that evaluate to null on failure), library.extend, single actions without an Action([...]) wrapper, context on @ToAssistant, and a stored message format via buildMessage/parseMessage. See What's New in 1.0.

Benchmarks

The project's token benchmark (tiktoken, GPT-5 encoder, seven scenarios) totals 4,800 tokens for OpenUI Lang vs 10,180 for Vercel JSON-Render (-52.8%) and 9,948 for Thesys C1 JSON (-51.7%), with up to -67.1% on a contact form. These are self-reported numbers.

Getting started

Run npx @openuidev/cli@latest create --name genui-chat-app, or add @openuidev/react-lang and @openuidev/react-ui to a React app; LangGraph users have @openuidev/langchain. The 1.0 features are React-only for now, and client packages must be upgraded together with the server that generates the system prompt.

Action HubReady to adopt this in production?

Benchmark side-by-side against alternatives, or calculate monthly token cost vs subscription break-even.

Up NextLangGraph.js SDK 1.12.0: useStream enqueue can use durable server-side run queues across reloads/sessions
Read Now→