The Custom UI Builder lets you publish beautiful, graph-bound web interfaces for your automations. End users interact through {bot-subdomain}.bots.narakim.cloud/p/{slug} (same public host as inbound webhooks; UI lives under /p/) without using Studio or calling APIs directly.
Publishing sets status to PUBLISHED in the database — the page is live immediately on the bot subdomain (no separate deploy step).
What Custom UIs Are
- Graph-bound — Every input and output maps to real automation nodes (
data-nui-input,data-nui-outputin generated HTML). - AI-designed — Generation is always agentic: a planner designs layout and bindings, then an HTML generator produces a bespoke page (not a generic form dump).
- Pattern guides — Built-in patterns (dashboard, log monitor, chat, file processor, etc.) are reference only; the AI adapts them to your intent and graph.
AI Agent: UI Builder Skill
When you ask to build a dashboard, portal, public page, or custom interface, the agent uses the UI Builder skill with tools:
| Tool | Purpose |
|---|---|
list_custom_uis | List UIs for a bot |
create_custom_ui | Create a draft Custom UI |
generate_custom_ui | Run agentic generation (requires rich userIntent) |
preview_custom_ui | Preview HTML before publish |
publish_custom_ui | Go live on the bot subdomain |
list_ui_patterns / search_ui_patterns | Browse pattern guides for inspiration |
Recommended flow
- Ensure the bot has an automation graph (DEVELOPMENT by default).
create_custom_uiwith name and slug.generate_custom_uiwith a detailed brief (layout, sidebar, live logs, theme, copy).preview_custom_uiif the user wants to review.publish_custom_uiafter confirmation — share the public URL.
Access modes
- PUBLIC — Anyone with the link can use the UI (rate-limited).
- PASSWORD_PROTECTED — Requires
X-Custom-Ui-Keyheader (stored in session after prompt). - TEAM_ONLY — Studio-authenticated team members only.
Runtime behavior
Published pages include embedded Narakim runtime JS that:
- Collects
data-nui-inputvalues and POSTs to/api/p/{slug}/trigger - Polls
/api/p/{slug}/executions/{id}/outputfor results - Fills
data-nui-outputelements when execution completes
Plan limits
- Custom UIs per bot (tier-dependent)
- Execution history depth on public execution lists
- AI generation consumes monthly AI call quota (always uses LLM)
Studio (coming)
Manage Custom UIs from Bot → Custom UI in the Studio sidebar (/studio/bots/{botId}/custom-uis), or use the AI Agent UI Builder skill and the REST API under /custom-uis.
