Skip to content

Examples

These form definitions showcase common patterns for collecting structured data from humans via an AI agent.

A form for collecting support information before an agent opens a ticket.

{
"name": "Support Intake",
"slug": "support-intake",
"description": "Collect missing info from users for support agents.",
"fields": [
{ "id": "email", "label": "Email", "type": "email", "required": true },
{
"id": "priority",
"label": "Priority",
"type": "select",
"required": true,
"options": [
{ "label": "Low", "value": "low" },
{ "label": "Medium", "value": "medium" },
{ "label": "High", "value": "high" }
]
},
{ "id": "message", "label": "What do you need help with?", "type": "textarea", "required": true },
{ "id": "agent_id", "type": "hidden", "defaultValue": "support-bot" }
],
"settings": { "submitLabel": "Send to agent" }
}

A structured bug report form for developer agents.

{
"name": "Bug Report",
"slug": "bug-report",
"description": "Collect structured bug reports from users.",
"fields": [
{ "id": "title", "label": "What happened?", "type": "text", "required": true },
{
"id": "severity",
"label": "Severity",
"type": "select",
"required": true,
"options": [
{ "label": "Critical — system down", "value": "critical" },
{ "label": "Major — feature broken", "value": "major" },
{ "label": "Minor — cosmetic", "value": "minor" }
]
},
{ "id": "steps", "label": "Steps to reproduce", "type": "textarea", "required": true },
{ "id": "expected", "label": "What did you expect to happen?", "type": "textarea" },
{ "id": "screenshot", "label": "Screenshot", "type": "file" }
],
"settings": { "submitLabel": "File report" }
}

An agent-driven form for requesting specific information.

{
"name": "Information Request",
"slug": "info-request",
"description": "Agent requests specific details from the user.",
"fields": [
{ "id": "topic", "label": "Topic", "type": "text", "required": true,
"agentHint": "The subject the agent needs clarification on" },
{ "id": "detail_level", "label": "How much detail?",
"type": "radio", "required": true,
"options": [
{ "label": "Quick summary", "value": "summary" },
{ "label": "Detailed explanation", "value": "detailed" }
] },
{ "id": "context", "label": "Additional context", "type": "textarea" }
],
"settings": { "submitLabel": "Provide info" }
}

A decision form for human-in-the-loop agent workflows.

{
"name": "Approval Request",
"slug": "approval-request",
"description": "Request human approval before an agent takes action.",
"fields": [
{ "id": "action", "label": "Action to approve", "type": "textarea", "required": true,
"agentHint": "Describe what the agent plans to do" },
{ "id": "approved", "label": "Approve this action?",
"type": "radio", "required": true,
"options": [
{ "label": "Yes, proceed", "value": "approved" },
{ "label": "No, stop", "value": "rejected" }
] },
{ "id": "notes", "label": "Notes for the agent", "type": "textarea",
"agentHint": "Optional instructions for the agent if the action is rejected" }
],
"settings": { "submitLabel": "Confirm decision" }
}

All four forms are available in the repo under forms/. Use them as starting points for your own forms.