Skip to main content

Overview

The Agent Triage Protocol defines seven response types that comprehensively address common interaction patterns in human-AI collaboration scenarios. Each response type specifies the expected structure of user input and any associated constraints.

1. Simple Action

Response Type ID: simple Simple actions require no additional input from the user beyond selection. These actions represent binary decisions where the action itself fully encodes the user’s intent.
{
  "id": "approve",
  "label": "Approve Changes",
  "response_type": "simple",
  "flags": ["irreversible"]
}
Response Data Format: The response_data field must be null for simple actions.
"response_data": null
Use Cases:
  • Approving a suggested action
  • Acknowledging receipt of information
  • Triggering a predefined workflow

2. Binary Choice

Response Type ID: binary Binary choice actions present a true/false or yes/no decision. The action definition must include labels for both options.
{
  "id": "include_logs",
  "label": "Include diagnostic logs?",
  "response_type": "binary",
  "options": {
    "true_label": "Yes, include logs",
    "false_label": "No, skip logs"
  }
}
Response Data Format: The response_data field must contain a boolean value.
"response_data": true
Use Cases:
  • Yes/No questions
  • Opt-in or opt-out decisions
  • Toggle settings on/off

3. Single Choice

Response Type ID: choice Single choice actions require selection of exactly one option from a predefined list.
{
  "id": "select_priority",
  "label": "Select issue priority",
  "response_type": "choice",
  "options": [
    {"value": "critical", "label": "Critical - Production impact"},
    {"value": "high", "label": "High - Blocking development"},
    {"value": "medium", "label": "Medium - Important but not blocking"},
    {"value": "low", "label": "Low - Minor issue"}
  ]
}
Response Data Format: The response_data field must contain the selected option’s value as a string.
"response_data": "high"
Use Cases:
  • Selecting priority levels
  • Choosing from predefined categories
  • Routing decisions to different workflows

4. Multiple Choice

Response Type ID: multi_choice Multiple choice actions permit selection of one or more options from a list.
{
  "id": "select_recipients",
  "label": "Select recipients for this report",
  "response_type": "multi_choice",
  "options": [
    {"value": "engineering", "label": "Engineering Team"},
    {"value": "product", "label": "Product Management"},
    {"value": "security", "label": "Security Team"},
    {"value": "executives", "label": "Executive Leadership"}
  ],
  "constraints": {
    "min_selections": 1,
    "max_selections": 3
  },
  "flags": ["affects_others"]
}
Response Data Format: The response_data field must contain an array of selected option values.
"response_data": ["engineering", "security"]
Use Cases:
  • Selecting multiple recipients
  • Choosing features to enable
  • Selecting items to process in batch

Multiple Choice Constraints

The constraints object can include:
FieldTypeDefaultDescription
min_selectionsinteger0Minimum required selections
max_selectionsintegerunlimitedMaximum allowed selections

5. Text Input

Response Type ID: text Text input actions capture free-form textual responses.
{
  "id": "feedback",
  "label": "Provide feedback on this suggestion",
  "response_type": "text",
  "constraints": {
    "min_length": 10,
    "max_length": 1000,
    "placeholder": "What would you change about this suggestion?"
  }
}
Response Data Format: The response_data field must contain the user-provided text as a string.
"response_data": "The suggestion looks good overall, but we should consider the impact on mobile users. The current approach might cause performance issues on slower devices."
Use Cases:
  • Collecting feedback or comments
  • Asking for clarification
  • Gathering detailed explanations

Text Input Constraints

The constraints object can include:
FieldTypeDefaultDescription
min_lengthinteger0Minimum character count
max_lengthintegerunlimitedMaximum character count
placeholderstringnoneUI hint text

6. Numeric Input

Response Type ID: number Numeric input actions capture numerical values with optional constraints.
{
  "id": "set_threshold",
  "label": "Set detection threshold",
  "response_type": "number",
  "constraints": {
    "min": 0.1,
    "max": 0.9,
    "step": 0.05,
    "unit": "confidence",
    "placeholder": "Enter value between 0.1 and 0.9"
  }
}
Response Data Format: The response_data field must contain a numeric value.
"response_data": 0.75
Use Cases:
  • Setting thresholds or limits
  • Specifying quantities
  • Providing ratings or scores
  • Setting configuration values

Numeric Input Constraints

The constraints object can include:
FieldTypeDefaultDescription
minnumberunlimitedMinimum acceptable value
maxnumberunlimitedMaximum acceptable value
stepnumberanyIncrement granularity
unitstringnoneUnit of measurement for display
placeholderstringnoneUI hint text

7. Scale/Range

Response Type ID: scale Scale actions capture values along a defined continuum, typically for ratings or confidence levels.
{
  "id": "confidence_rating",
  "label": "Rate your confidence in this analysis",
  "response_type": "scale",
  "constraints": {
    "min": 1,
    "max": 5,
    "step": 1,
    "min_label": "Not confident at all",
    "max_label": "Extremely confident"
  }
}
Response Data Format: The response_data field must contain an integer within the defined range.
"response_data": 4
Use Cases:
  • Confidence ratings
  • Satisfaction scales
  • Numeric scales with semantic meaning
  • Likert scale questions

Scale Constraints

The constraints object must include:
FieldTypeDefaultDescription
minintegerrequiredScale minimum value
maxintegerrequiredScale maximum value
stepinteger1Increment size
min_labelstringnoneLabel for minimum value
max_labelstringnoneLabel for maximum value

Client Rendering Considerations

Client applications should render appropriate UI components based on the response type:
  • Simple Actions: Buttons with no additional input fields
  • Binary Choices: Toggle switches, radio buttons, or yes/no buttons
  • Single Choices: Dropdown menus or radio button groups
  • Multiple Choices: Checkbox groups with validation for min/max constraints
  • Text Inputs: Text areas or input fields with character count validation
  • Numeric Inputs: Number input fields with increment/decrement controls
  • Scales: Slider controls or numeric rating components
Clients should respect all constraints defined for each response type and prevent users from submitting invalid responses.
I