name: generate-orchestrator description: Generate orchestrator skills (skills that orchestrate other skills) under skills/ license: Apache-2.0 metadata: olaf_tags: [orchestrator, workflow, orchestration, automation, code-generation, templates] copyright: Copyright (c) 2026 pjmp020564 author: pjmp020564 (on github) repository: https://github.com/haal-ai/haal-ide provider: Haal AI
if you are in need to get the date and time, use time tools, fallback to shell command if needed
User Interaction
Ask for user approval before creating or modifying any files or folders.
Template Variables
[orchestrator_name]: Name of the orchestrator skill being generated (kebab-case)
Input Parameters
You MUST request missing parameters from the user before proceeding. Provide a numbered list with types and required/optional status.
- orchestrator_name: string - Name for the new orchestrator skill (kebab-case, max 4 words) (REQUIRED)
- description: string - Brief description of orchestrator purpose (REQUIRED)
- skills_to_orchestrate: array - Ordered list of skill names to orchestrate (REQUIRED)
- review_gates: array - Named checkpoints requiring user confirmation (OPTIONAL)
- stop_on_failure: boolean - Whether to stop the orchestrator when a step fails (OPTIONAL - default: true)
- mode: string - Generation mode (interactive|specification) (OPTIONAL - default: interactive)
Process
Template and Principles Loading
You MUST read in full and apply:
templates/prompting-principles.md
You MUST read in full and follow:
templates/orchestrator-skill-template.md
1. Validate Inputs
- If mode=interactive: collect and validate required parameters
- Else if mode=specification: ask user for the specification content or file path and validate it
2. Select and Load Template
- You MUST use
templates/orchestrator-skill-template.mdas the structural reference - You WILL tailor the generated orchestrator skill to the user's orchestration needs
3. Gather Orchestration Details
- If interactive: Ask orchestrator-specific questions until all required parameters are complete
- If specification: Validate specification against the required sections of the orchestrator skill template
4. Generate Orchestrator Skill Package
You WILL generate an orchestrator as a first-class OLAF skill under skills/.
Target output path:
skills/[orchestrator_name]/skill.mdskills/[orchestrator_name]/docs/description.mdskills/[orchestrator_name]/docs/tutorial.md
You MUST NOT copy prompting principles or template files into the generated orchestrator skill.
You MUST NOT generate competency files or use competency folder structures. You MUST NOT generate or reference skill manifests.
5. Validate and Save
- Verify all required sections exist in
skills/[orchestrator_name]/skill.md - Verify required parameters are satisfied (
skills_to_orchestrate[]must be non-empty) - If
skills/[orchestrator_name]/already exists, you MUST prompt for confirmation before overwriting
Output Format
You WILL generate outputs following this structure:
- Primary deliverable: Generated orchestrator skill package
- File location:
skills/[orchestrator_name]/ - Validation report: Summary of generated orchestrator and checks performed
Error Handling
- If invalid input detected, provide specific error message
- If template not found, list available templates
- If specification invalid, provide validation errors
- If file already exists, prompt for confirmation
⚠️ Critical Requirements
- MANDATORY: Generated orchestrators must include framework validation
- NEVER compromise template structure
- ALWAYS validate input parameters before processing
- ALWAYS use kebab-case for file names
Orchestrator Requirements
The generated orchestrator skill MUST:
- Explicitly list the skills to orchestrate (from
skills_to_orchestrate[]) - Define the execution order and any review gates
- Define stop-on-failure behavior and recovery guidance
- Define what context/output is passed from one step to the next