{
"type": "context",
"context": {
"task": {
"type": "steps",
"version": "v1alpha",
"id": "contact-form",
"tool": {
"name": "submit_contact_info",
"description": "Submit contact form information"
},
"steps": [
{
"id": "COLLECT_NAME",
"goal": "Collect the user's name",
"instructions": [
"Ask the user for their name.",
"Once you have their name, call the submit_contact_info tool with the user_name parameter."
],
"inputs": [
{
"name": "user_name",
"type": "string",
"description": "The user's name",
"required": true
}
],
"on": {
"submit": [
{"action": "save"}
]
},
"next": [{"id": "COLLECT_EMAIL"}]
},
{
"id": "COLLECT_EMAIL",
"goal": "Collect the user's email address",
"instructions": [
"Ask the user for their email address.",
"Once you have their email, call the submit_contact_info tool with the user_email parameter."
],
"inputs": [
{
"name": "user_email",
"type": "string",
"description": "The user's email address",
"required": true
}
],
"on": {
"submit": [
{"action": "save"}
]
},
"next": [{"id": "COLLECT_TIME"}]
},
{
"id": "COLLECT_TIME",
"goal": "Collect the user's preferred contact time",
"instructions": [
"Ask the user for their preferred contact time.",
"Once you have their preference, call the submit_contact_info tool with the contact_time parameter."
],
"inputs": [
{
"name": "contact_time",
"type": "string",
"description": "The user's preferred contact time",
"required": true
}
],
"on": {
"submit": [
{"action": "save"}
]
}
}
]
}
},
"tool": {
"type": "function",
"function": {
"name": "contact_form_workflow",
"description": "Multi-step workflow with sequential input collection",
"parameters": {
"type": "object",
"properties": {},
"required": []
}
}
}
}