Conversational Forms
Conversational Forms replace tedious static input forms with intelligent, interactive dialogue that captures and validates structured data in real time.
Instead of presenting users with a rigid questionnaire where every question must be answered linearly, an AI Form Agent conducts a natural, fluid conversation. As details are provided, the agent progressively extracts and validates information, updating a synchronized side-panel view in real time (progressive disclosure).
Why Conversational Forms?
Traditional web forms suffer from high abandonment rates, especially on mobile devices or in complex intake workflows (e.g. travel booking, medical triage, insurance claims, customer onboarding):
| Static Web Forms | Conversational Forms on AIsh.li |
|---|---|
| Rigid Order: Users must answer questions in the predefined sequence | Natural Dialogue: Users can provide details in any order or all at once |
| All-or-Nothing: Incomplete submissions are lost | Progressive Extraction: Data is captured incrementally with each turn |
| Frustrating Validation: Ambiguous errors on submit | Contextual Clarification: The agent asks gentle follow-ups for missing fields |
| High Abandonment: Long forms intimidate visitors | Interactive & Engaging: Conversational flow feels like talking to an expert concierge |
How Progressive Disclosure Works
When interacting with a Form Agent in AIsh.li:
- User Speaks Naturally: The visitor can say "I want to book a trip from Paris to Rome tomorrow morning with Luigi".
- Entity & Schema Resolution: The agent maps the utterance against the required fields specified in its JSON Schema.
- Live Side-Panel Updates: The UI dynamically updates the form state drawer:
- Extracted values (e.g. origin city, destination, traveller name) appear immediately.
- Connected tools (such as Google Maps) can automatically resolve coordinates in the background.
- Contextual Clarification: If any required fields remain unfilled (e.g. departure time or return date), the agent politely prompts for only the missing details.
- Form Completion: Once all required schema fields are validated, the form status switches to complete and emits clean structured JSON ready for processing.
sequenceDiagram
autonumber
actor User
participant Agent
participant Form as Live Form Panel
User->>Agent: "I want to travel from Paris to Rome tomorrow morning with Luigi"
Note over Agent: Maps & Schema Resolution
Agent->>Form: Populate resolved fields
Note over Form: ✓ Traveller: Luigi<br/>✓ Origin: Paris<br/>✓ Destination: Rome<br/>⏳ Departure: [Pending...]
Agent-->>User: Contextual acknowledgement + asks for departure time
Developer vs End-User View: In the full web app, the form state drawer is displayed alongside the conversation so builders can inspect data extraction. In the Embeddable Chat Widget, visitors experience a pure, seamless conversation while your backend receives the structured output via webhooks or API calls.
Defining a Form Agent
To create a Form Agent:
- In the Agent Builder, set Kind to
Form. - Provide a system instruction guiding the agent's tone and interview strategy.
- Under Output Schema, specify a standard JSON Schema declaring the properties and
requiredfields.
Here is an example excerpt from the Transport Demo Agent:
id: demo/transport
kind: form
instruction: >
You are an agent who must obtain trip details from point A to B.
Ask for missing information informally and warmly.
output:
mediaType: application/json
schema:
type: object
properties:
name:
type: string
description: Traveller's full name
origin:
type: string
description: Departure location and city
destination:
type: string
description: Destination location and city
origin_date_time:
type: string
description: Date and time of departure (ISO 8601)
required:
- name
- origin
- destination
- origin_date_time
Next Steps
- Try It Live: Launch the Transport Planner in Chat and watch the fields populate live.
- Inspect the Schema: View the full declarative definition in the Transport Agent Code Tab.
- Backend API Integration: Read the Developer Forms API Guide to integrate form sessions into your backend services.