| name | output-plan-workflow |
| description | Use when the user asks to create, build, generate, scaffold, or plan a new workflow. Orchestrates the full planning process including architecture, steps, prompts, evaluators, and testing strategy using specialized subagents. |
Your task is to generate a comprehensive Output.ai workflow implementation plan in markdown format.
The plan will be displayed to the user who can then decide what to do with it.
Please respond with only the final version of the plan.
Use the todo tool to track your progress through the plan creation process.
Plan Creation Rules
Overview
Generate detailed specifications for implementation of a new workflow.
Output Path
All plan outputs go to: .outputai/plans/YYYY_MM_DD_<workflow_name>_<task_name>/PLAN.md
<process_flow>
Step 0: Arguments Analysis
Analyze the arguments the user provided:
Ensure they have provided:
- workflow_description: The description of the workflow to be created
- additional_instructions: Additional instructions for the workflow
If not, ask the user for the missing information.
EXECUTE: Claude Skill: `output-meta-pre-flight`
Step 1: Context Gathering
Take the time to gather all the context you need to create a comprehensive plan.
- Read any given files or links
- Find any related workflows in the project
- Read the projects documentation files
Step 2: Requirements Clarification
Clarify scope boundaries and technical considerations by asking numbered questions as needed to ensure clear requirements before proceeding.
<clarification_areas>
- in_scope: what is included
- out_of_scope: what is excluded (optional)
- functionality specifics
- UI/UX requirements
- integration points
<llm_provider>
- Ask which LLM provider the user wants to use (anthropic, openai, or vertex)
- Default to anthropic if the user has no preference
- All prompt files in the workflow must use the same provider unless the user explicitly requests otherwise
- Record the chosen provider so it flows through to prompt engineering (step 6) and implementation
</llm_provider>
</clarification_areas>
<decision_tree>
IF clarification_needed:
ASK numbered_questions
WAIT for_user_response
ELSE:
PROCEED schema_definition
</decision_tree>
Step 3: Workflow Design
Design the workflow with clear single purpose steps and sound orchestration logic.
<thought_process>
- Define the workflow name and description
- What is a valid output schema for the workflow?
- What is a valid input schema for the workflow?
- What needs to happen to transform the input into the output?
- What are the atomic steps that need to happen to transform the input into the output?
- How do these steps relate to each other?
- Are any of these steps conditional?
- Are any of these steps already defined in the project?
- How could these steps fail, and how should we handle them? (retry, backoff, etc.)
</thought_process>
<step_output>
Output Draft Plan: to .outputai/plans/YYYY_MM_DD_<workflow_name>_<task_name>/PLAN.md
</step_output>
Step 4: Step Design
Design the individual steps called by the workflow with clear boundaries.
<thought_process>
- What is the name and description of each step?
- What is the input schema for each step?
- What is the output schema for each step?
- What external services or APIs does each step use?
- What error handling is needed for each step?
- What retry policies should each step have?
</thought_process>
<step_output>
Output Updated Plan: to .outputai/plans/YYYY_MM_DD_<workflow_name>_<task_name>/PLAN.md
</step_output>
Step 4.5: Evaluator Design
Determine if the workflow requires quality assessment, validation, or content evaluation.
<decision_tree>
IF workflow_outputs_need_quality_scoring:
DESIGN evaluator functions
IF workflow_has_llm_generated_content:
CONSIDER content evaluation (factual accuracy, relevance, tone)
IF workflow_requires_validation_with_confidence:
DESIGN validation evaluators
ELSE:
SKIP evaluator design (note in plan: "No evaluators needed")
</decision_tree>
<thought_process>
- Does the workflow produce content that needs quality assessment?
- Are there LLM-generated outputs that need evaluation?
- Would the workflow benefit from confidence-scored validation?
- What evaluation result types are appropriate (boolean/number/string)?
- Should evaluators use simple logic or LLM-powered assessment?
- Would offline eval testing with
@outputai/evals be appropriate for dataset-driven verification?
</thought_process>
<step_output>
Output Updated Plan: to .outputai/plans/YYYY_MM_DD_<workflow_name>_<task_name>/PLAN.md
</step_output>
Step 5: Plan Review
Review the draft plan and make any necessary changes.
<thought_process>
- Does the plan make sense?
- Are all the steps clear and concise?
- Are all the dependencies identified?
- Does the workflow follow Output SDK conventions?
- Are error handling patterns appropriate?
- Is the input/output schema design correct?
</thought_process>
<decision_tree>
IF changes_needed:
UPDATE draft_plan
ELSE:
PROCEED to step 6
</decision_tree>
<step_output>
Output Reviewed Plan: to .outputai/plans/YYYY_MM_DD_<workflow_name>_<task_name>/PLAN.md
</step_output>
Step 6: Prompt Engineering
If any of the steps use an LLM, design the prompts for the steps.
<decision_tree>
IF step_uses_llm:
USE prompt_step_template
ELSE:
SKIP to step 7
</decision_tree>
<step_output>
Output Updated Plan: to .outputai/plans/YYYY_MM_DD_<workflow_name>_<task_name>/PLAN.md
</step_output>
Step 7: Testing Strategy
Design the testing strategy for the workflow.
<thought_process>
- What unit tests do we need to write?
- How can I run the workflow?
- What cases do we need to validate?
- What scenario files should be created?
- Should we create eval datasets for offline testing with
output workflow test?
- What ground truth values are needed for eval datasets?
</thought_process>
<step_output>
Output Updated Plan: to .outputai/plans/YYYY_MM_DD_<workflow_name>_<task_name>/PLAN.md
</step_output>
Step 8: Generate Plan
Generate the complete plan in markdown format.
Note that every implementation should start with running the cli command npx output workflow generate --skeleton to create the workflow directory structure.
<file_template>
# Workflow Requirements Document
> Workflow: [WORKFLOW_NAME]
> Created: [CURRENT_DATE]
- Overview
- Spec Scope
- Out of Scope
- Workflow Design
- Step Design
- Evaluator Design (if applicable)
- Prompt Design
- Testing Strategy
- Implementation Phases
<step_output>
Output Final Plan: to .outputai/plans/YYYY_MM_DD_<workflow_name>_<task_name>/PLAN.md
</step_output>
Step 9: Post-Flight Check
Verify the plan is complete and ready for implementation.
EXECUTE: Claude Skill: `output-meta-post-flight`
Then instruct the user to:
- Review the plan
- Make any necessary changes
- Implement the workflow by invoking the
output-build-workflow skill, providing the plan file path, workflow name, and workflow directory
</process_flow>
---- START ----
Use the workflow description and any additional instructions the user provided.