Files
hristudio/public/hristudio-core/plugins/wizard-actions.json

283 lines
7.3 KiB
JSON
Executable File

{
"blockSetId": "wizard-actions",
"name": "Wizard Actions",
"description": "Actions performed by the human wizard during experiment execution",
"version": "1.0.0",
"pluginApiVersion": "1.0",
"hriStudioVersion": ">=0.1.0",
"trustLevel": "official",
"category": "wizard-actions",
"author": {
"name": "HRIStudio Team",
"email": "support@hristudio.com",
"organization": "HRIStudio"
},
"documentation": {
"mainUrl": "https://docs.hristudio.org/blocks/wizard-actions",
"description": "Wizard action blocks define behaviors that the human experimenter performs during trials. These create prompts and interfaces for the wizard to follow the experimental protocol."
},
"blocks": [
{
"id": "wizard_say",
"name": "say",
"description": "Wizard speaks to the participant",
"category": "wizard",
"shape": "action",
"icon": "MessageSquare",
"color": "#a855f7",
"nestable": false,
"parameters": [
{
"id": "message",
"name": "Message",
"type": "text",
"value": "",
"placeholder": "What should the wizard say?",
"description": "Text that the wizard will speak to the participant"
},
{
"id": "tone",
"name": "Tone",
"type": "select",
"value": "neutral",
"options": [
"neutral",
"friendly",
"encouraging",
"instructional",
"questioning"
],
"description": "Suggested tone for delivery"
}
],
"execution": {
"type": "wizard_prompt",
"blocking": true,
"timeout": 30000
}
},
{
"id": "wizard_gesture",
"name": "gesture",
"description": "Wizard performs a physical gesture",
"category": "wizard",
"shape": "action",
"icon": "Hand",
"color": "#a855f7",
"nestable": false,
"parameters": [
{
"id": "type",
"name": "Gesture",
"type": "select",
"value": "wave",
"options": [
"wave",
"point",
"nod",
"thumbs_up",
"beckon",
"stop_hand",
"applaud"
],
"description": "Type of gesture to perform"
},
{
"id": "direction",
"name": "Direction",
"type": "select",
"value": "forward",
"options": [
"forward",
"left",
"right",
"up",
"down",
"participant",
"robot"
],
"description": "Direction or target of the gesture"
}
],
"execution": {
"type": "wizard_prompt",
"blocking": true,
"timeout": 15000
}
},
{
"id": "wizard_show_object",
"name": "show object",
"description": "Wizard presents or demonstrates an object",
"category": "wizard",
"shape": "action",
"icon": "Package",
"color": "#a855f7",
"nestable": false,
"parameters": [
{
"id": "object",
"name": "Object",
"type": "text",
"value": "",
"placeholder": "Name of object to show",
"description": "Description of the object to present"
},
{
"id": "action",
"name": "Action",
"type": "select",
"value": "hold_up",
"options": [
"hold_up",
"demonstrate",
"point_to",
"place_on_table",
"hand_to_participant"
],
"description": "How to present the object",
"required": false
}
],
"execution": {
"type": "wizard_prompt",
"blocking": true,
"timeout": 20000
}
},
{
"id": "wizard_record_note",
"name": "record note",
"description": "Wizard records an observation or note",
"category": "wizard",
"shape": "action",
"icon": "PenTool",
"color": "#a855f7",
"nestable": false,
"parameters": [
{
"id": "note_type",
"name": "Note Type",
"type": "select",
"value": "observation",
"options": [
"observation",
"participant_response",
"technical_issue",
"protocol_deviation",
"other"
],
"description": "Category of note being recorded"
},
{
"id": "prompt",
"name": "Prompt",
"type": "text",
"value": "",
"placeholder": "What should the wizard note?",
"description": "Guidance for what to observe or record"
}
],
"execution": {
"type": "wizard_prompt",
"blocking": true,
"timeout": 60000
}
},
{
"id": "wizard_wait_for_response",
"name": "wait for response",
"description": "Wizard waits for participant to respond",
"category": "wizard",
"shape": "action",
"icon": "Clock",
"color": "#a855f7",
"nestable": false,
"parameters": [
{
"id": "response_type",
"name": "Response Type",
"type": "select",
"value": "verbal",
"options": ["verbal", "gesture", "action", "button_press", "any"],
"description": "Type of response to wait for"
},
{
"id": "timeout",
"name": "Timeout (s)",
"type": "number",
"value": 30,
"min": 1,
"max": 300,
"step": 1,
"description": "Maximum time to wait for response"
},
{
"id": "prompt_text",
"name": "Prompt",
"type": "text",
"value": "",
"placeholder": "Optional prompt for participant",
"description": "Text to display to guide participant response"
}
],
"execution": {
"type": "wizard_prompt",
"blocking": true,
"timeout": 300000
}
},
{
"id": "wizard_rate_interaction",
"name": "rate interaction",
"description": "Wizard provides a subjective rating",
"category": "wizard",
"shape": "action",
"icon": "Star",
"color": "#a855f7",
"nestable": false,
"parameters": [
{
"id": "rating_type",
"name": "Rating Type",
"type": "select",
"value": "engagement",
"options": [
"engagement",
"comprehension",
"comfort",
"success",
"naturalness",
"custom"
],
"description": "Aspect being rated"
},
{
"id": "scale",
"name": "Scale",
"type": "select",
"value": "1-5",
"options": ["1-5", "1-7", "1-10", "0-100"],
"description": "Rating scale to use"
},
{
"id": "custom_label",
"name": "Custom Label",
"type": "text",
"value": "",
"placeholder": "Label for custom rating type",
"description": "Description for custom rating (if selected)"
}
],
"execution": {
"type": "wizard_prompt",
"blocking": true,
"timeout": 30000
}
}
]
}