Marketplace

gather-requirements

Gather requirements for creating agents, skills, commands, or plugins through interactive prompts and validation. Ensures all necessary information is collected before generation begins.

model: claude-haiku-4-5

$ Installer

git clone https://github.com/fractary/claude-plugins /tmp/claude-plugins && cp -r /tmp/claude-plugins/plugins/faber-agent/skills/gather-requirements ~/.claude/skills/claude-plugins

// tip: Run this command in your terminal to install the skill


name: gather-requirements model: claude-haiku-4-5 description: | Gather requirements for creating agents, skills, commands, or plugins through interactive prompts and validation. Ensures all necessary information is collected before generation begins. tools: Bash

Gather Requirements Skill

You interact with the user through prompts to ensure complete requirements before artifact generation begins.

<CRITICAL_RULES> IMPORTANT: Rules that must never be violated

  1. Complete Information

    • ALWAYS collect all required information
    • NEVER proceed with incomplete requirements
    • ALWAYS validate user input before accepting
  2. User Interaction

    • ALWAYS prompt clearly for missing information
    • ALWAYS provide examples when asking for input
    • ALWAYS validate and confirm choices
  3. Artifact-Specific

    • ALWAYS use the correct workflow for artifact type
    • ALWAYS collect artifact-specific requirements
    • NEVER mix requirements from different artifact types

</CRITICAL_RULES>

Example:

{
  "artifact_type": "agent",
  "agent_name": "data-analyzer",
  "provided_params": {
    "agent_type": "manager",
    "description": "Orchestrates data analysis workflows",
    "tools": "Bash, Skill"
  }
}

EXECUTE STEPS:

Step 1: Load Artifact-Specific Workflow

Read the appropriate workflow file based on artifact type:

  • For agents: Read workflow/agent.md
  • For skills: Read workflow/skill.md
  • For commands: Read workflow/command.md
  • For plugins: Read workflow/plugin.md

The workflow file contains the specific prompts and validation logic for that artifact type.

Step 2: Execute Workflow

Follow the workflow file instructions to:

  1. Check which parameters are already provided
  2. Prompt for missing required parameters
  3. Prompt for optional parameters (with defaults)
  4. Validate all collected information
  5. Confirm with user

Step 3: Validate Requirements

Validate collected requirements:

  • Names follow naming conventions (kebab-case, no special characters)
  • Descriptions are clear and concise
  • All required fields are non-empty
  • Types/options are from valid choices

Step 4: Return Requirements

Build and return complete requirements object.

OUTPUT COMPLETION MESSAGE:

✅ COMPLETED: Gather Requirements
Requirements collected:
  • Name: {artifact_name}
  • Type: {artifact_type}
  • Description: {description}
  • [Additional fields...]
───────────────────────────────────────
Next: Architect phase will design structure

IF FAILURE:

❌ FAILED: Gather Requirements
Step: {failed_step}
Error: {error_message}
Resolution: {resolution_hint}
───────────────────────────────────────

<COMPLETION_CRITERIA> This skill is complete and successful when ALL verified:

1. Complete Information

  • All required parameters collected
  • All optional parameters have values (default or user-provided)
  • No null or empty required fields

2. Validated Input

  • Names follow conventions (kebab-case)
  • Types are from valid choices
  • Descriptions are clear
  • No invalid characters or formats

3. User Confirmation

  • User has reviewed collected requirements
  • User has confirmed to proceed

FAILURE CONDITIONS - Stop and report if: ❌ User cancels during prompts (exit gracefully) ❌ Invalid input after multiple retry attempts (report validation error) ❌ Workflow file not found for artifact type (report missing workflow)

PARTIAL COMPLETION - Not acceptable: ⚠️ Missing optional parameters → Use sensible defaults ⚠️ Unclear description → Prompt for clarification </COMPLETION_CRITERIA>

{
  "status": "success",
  "artifact_type": "{artifact_type}",
  "requirements": {
    "name": "{artifact_name}",
    "type": "{type}",
    "description": "{description}",
    "tools": "{tools}",
    "plugin_name": "{plugin_name}",
    // ... artifact-specific fields
  }
}

On error:

{
  "status": "error",
  "error": "{error_message}",
  "step": "{failed_step}"
}

<ERROR_HANDLING>

Missing Workflow File

Pattern: Workflow file not found for artifact type

Action:

  1. Report which workflow file is missing
  2. List expected path (e.g., workflow/agent.md)
  3. Suggest creating workflow file or checking artifact type

Invalid Name Format

Pattern: Name contains invalid characters or format

Action:

  1. Explain naming convention (kebab-case, lowercase, hyphens only)
  2. Provide examples: "data-analyzer", "workflow-manager"
  3. Prompt user to enter valid name

User Cancellation

Pattern: User cancels during interactive prompts

Action:

  1. Acknowledge cancellation
  2. Exit gracefully with status "cancelled"
  3. Do not throw error (this is valid user action)

Validation Failure

Pattern: Input fails validation checks

Action:

  1. Report specific validation error
  2. Explain requirement
  3. Prompt for corrected input
  4. Allow up to 3 retry attempts

</ERROR_HANDLING>

Integration

Invoked By:

  • agent-creator agent (Phase 1: Frame)
  • skill-creator agent (Phase 1: Frame)
  • command-creator agent (Phase 1: Frame)
  • plugin-creator agent (Phase 1: Frame)

Invokes:

  • No other skills (this is a leaf skill)
  • Reads workflow files from workflow/ directory

Workflow Files:

  • workflow/agent.md - Agent requirements gathering
  • workflow/skill.md - Skill requirements gathering
  • workflow/command.md - Command requirements gathering
  • workflow/plugin.md - Plugin requirements gathering

Best Practices

  1. Always provide examples when prompting for input
  2. Validate immediately - catch errors early
  3. Confirm before proceeding - show summary and ask for confirmation
  4. Handle cancellation gracefully - respect user choice to stop
  5. Keep prompts clear - avoid jargon, explain what's needed

This skill ensures high-quality input for artifact generation by validating requirements upfront.