Freesail is the open-source SDK that lets your AI agents dynamically drive rich user interfaces — without writing a single line of UI code.
Designed for enterprise & product teams · by Thendral AI
import { ReactUI } from 'freesail';
import { StandardCatalog } from '@freesail/catalogs';
//Agent renders UI according to chat context & responds to actions.
//You just provide the UI slot.
const App = () => (
<ReactUI.FreesailProvider
gateway = "/gateway"
catalogDefinitions = "[StandardCatalog]">
...
</ReactUI.FreesailProvider>
); Why Freesail?
Say goodbye to walls of text. Give AI agents a safe, structured channel to render rich UI components that capture user attention, in real-time.
Let your AI agents generate dynamic, interactive UI in real time. Agents get the tools to drive UI on connecting to Freesail Gateway, and are guided by prompts and notifications.
Agents select UI capabilities from a validated JSON catalog (A2UI Catalog) — not raw code. Zero hallucination risk, guaranteed layout integrity, enterprise-grade reliability.
Deploy the Freesail Gateway, plug in your LLM agent (LangChain, etc.), wire up the React Provider. Full streaming, offline queueing, and bidirectional interactions — out of the box.
Register custom components with Freesail, apply your brand styles and themes, then let agents render them on demand. Build once, reuse — or distribute your component library.
Architecture
Freesail's proven 3-node design cleanly separates concerns — keeping your AI logic, validation layer, and presentation layer independently scalable and maintainable.
The decision-making brain (e.g., LangChain or crewAI agent). Uses the Freesail Gateway's MCP Prompts, Tools and Resources to learn about A2UI on the fly and composes A2UI messages in JSON format to be rendered by the Freesail ReactUI front-end.
Standalone MCP + Express server. Validates agent output against the catalog schema, streams A2UI messages from the agent to the front-end, and routes user actions from the front-end back to the agent.
The stateful React presentation layer. Uses Freesail ReactUI to render A2UI JSON messages into UI components, manages the local data model, and ensures a seamless, responsive user experience.
Get started in minutes with our quickstart guide, or reach out to our team for a demo.