Agent-Driven UI (ADUI)
AI agents that drive
your complex dashboard
For CRMs, ERPs, PMSes, and admin panels where the UI is the product. Your agent drives the real interface — same buttons, same forms, same flows your users already use. No duplicate tool layer.
$ npm install @mydatavalue/polter
The AI assistant on the right sends a single sentence. Polter drives every click on the left.
A new paradigm
From Generative UI → Agent-Driven UI
Generative UI generates new interfaces on the fly. Agent-Driven UI drives the one you already built — for complex B2B apps where the dashboard is the product.
Two problems when you add an agent to a complex dashboard
Problem
The duplicate tool layer
You already built the table, filters, bulk-edit modal, per-row actions. Now the agent needs to do the same things — so you're writing parallel API endpoints, tool schemas, and handlers that re-implement your UI in JSON. Every feature ships twice, and the two layers drift apart.
Problem
Users never learn
The agent works behind the scenes or generates throwaway UI. Users never see where buttons are or how workflows connect. Permanent dependency on the agent for tasks they should own.
→ Polter solves both
Your UI is the agent
Single source of truth. The agent drives the real buttons, dropdowns, and forms that power your dashboard — one UI, one schema, zero duplicate tools. Users watch it happen and pick up the interface naturally along the way.
Four lines to teach your UI
1
Wrap your app
Guided mode or instant. One prop.
<AgentActionProvider mode="guided" stepDelay={600}> <App /> </AgentActionProvider>
2
Register actions
Wrap any element. Polter handles the rest.
const exportCsv = defineAction({ name: "export_csv", description: "Export to CSV" }); <AgentAction action={exportCsv}> <ExportButton /> </AgentAction>
3
Connect your agent
Schemas auto-generate. Send to any LLM.
const { schemas, execute } = useAgentActions(); // schemas auto-update as components mount/unmount // call execute("export_csv") when your agent responds
4
Watch it work
Scroll, dim, spotlight, cursor, click. The user sees everything.
Built for real apps
Multi-step actions
Open dropdown, select option. Sequential steps with visual guidance.
Lifecycle-aware schemas
Mounted = exists. Unmounted = gone. Agent can't hallucinate clicks on things that aren't there.
Animated cursor
Ghost cursor glides to each target before clicking. Opt-out with one prop.
Simulated typing
Types character-by-character into real inputs. Triggers React events properly.
Guided & instant modes
Guided for learning. Instant for power users. Switch anytime.
Zero dependencies
React + Zod peer deps only. No runtime dependencies.
Lazy target resolution
Portals, popovers, virtualized lists. Opens the container, then finds the target.
DevTools included
Test actions, inspect schemas, debug execution. No setup.