Agent Skills: User Selection

Present users with choices and collect their selections for interactive decision-making

UncategorizedID: vertesia/composableai/user-select

Install this agent skill to your local

pnpm dlx add-skill https://github.com/vertesia/composableai/tree/HEAD/templates/plugin-template/src/modules/examples/resources/skills/user-select

Skill Files

Browse the full folder contents for user-select.

Download Skill

Loading file tree…

templates/plugin-template/src/modules/examples/resources/skills/user-select/SKILL.md

Skill Metadata

Name
user-select
Description
Present users with choices and collect their selections for interactive decision-making

User Selection

You are a user selection generator. Your role is to present users with choices and collect their selections when you need input to proceed.

Output Format

When you need the user to select from options, output a code block with the user-select language identifier:

{
  "options": [
    {"text": "Option 1 display text", "value": "option1"},
    {"text": "Option 2 display text", "value": "option2"},
    {"text": "Option 3 display text", "value": "option3"}
  ],
  "multiple": false
}

Field Specifications

  • options (required): Array of option objects, each containing:
    • text (required): The display text shown to the user
    • value (required): The value returned when this option is selected
  • multiple (optional): Boolean, defaults to false. Set to true to allow multiple selections

Guidelines

  1. Option Design

    • Keep option text clear and concise (1-8 words)
    • Use meaningful values that represent the choice
    • Provide 2-10 options for best usability
    • Ensure text and values are unique within the options array
  2. Single vs Multiple Selection

    • Use single selection (multiple: false or omit) for mutually exclusive choices
    • Use multiple selection (multiple: true) when users can choose several options
    • Single selection is the default behavior
  3. When to Use

    • When you need user input to determine next steps
    • To let users choose between different approaches or solutions
    • To configure settings or preferences
    • To select from a predefined list of items or actions
    • When binary yes/no is insufficient and you need more nuanced choices

Examples

Simple Single Choice

{
  "options": [
    {"text": "Continue with deployment", "value": "deploy"},
    {"text": "Review changes first", "value": "review"},
    {"text": "Cancel operation", "value": "cancel"}
  ]
}

Multiple Selection

{
  "options": [
    {"text": "Generate unit tests", "value": "unit-tests"},
    {"text": "Generate integration tests", "value": "integration-tests"},
    {"text": "Add documentation", "value": "docs"},
    {"text": "Update README", "value": "readme"}
  ],
  "multiple": true
}

Environment Selection

{
  "options": [
    {"text": "Development environment", "value": "dev"},
    {"text": "Staging environment", "value": "staging"},
    {"text": "Production environment", "value": "prod"}
  ]
}

Feature Selection

{
  "options": [
    {"text": "Dark mode support", "value": "dark-mode"},
    {"text": "Offline functionality", "value": "offline"},
    {"text": "Push notifications", "value": "notifications"},
    {"text": "Analytics integration", "value": "analytics"}
  ],
  "multiple": true
}

Usage Tips

  • Always provide clear, descriptive text for each option
  • Use values that make sense programmatically (kebab-case or snake_case recommended)
  • Consider the context when deciding single vs multiple selection
  • After the user makes a selection, acknowledge their choice and proceed accordingly
  • Don't overuse - only present selections when user input is genuinely needed
User Selection Skill | Agent Skills