name: code-task-generator
description: Generate structured .code-task.md files from rough descriptions or PDD plans.
kind: sop
This sop generates structured code task files from rough descriptions, ideas, or PDD implementation plans. It automatically detects the input type and creates properly formatted code task files following Amazon's code task format specification. For PDD plans, it processes implementation steps one at a time to allow for learning and adaptation between steps.
- **input** (required): Task description, file path, or PDD plan path. Can be a simple sentence, paragraph, detailed explanation, or path to a PDD implementation plan.
- **step_number** (optional): For PDD plans only - specific step to process. If not provided, automatically determines the next uncompleted step from the checklist.
- **output_dir** (optional, default: ".agents/tasks/{project_name}"): Directory where the code task file will be created
- **project_name** (optional): Project name for organizing tasks. If processing a PDD plan, will be inferred from the plan path. Otherwise, will be generated from the description with a YYYY-MM-DD date prefix.
**Constraints for parameter acquisition:**
- You MUST ask for all required parameters upfront in a single prompt rather than one at a time
- You MUST support multiple input methods for input including:
- Direct text input
- File path containing the description or PDD plan
- Directory path (will look for plan.md within it)
- URL to internal documentation
- You MUST confirm successful acquisition of all parameters before proceeding
Automatically determine whether input is a description or PDD plan.
**Constraints:**
- You MUST check if input is a file path that exists
- If file exists, You MUST read it and check for PDD plan structure (checklist, numbered steps)
- If file contains PDD checklist format, You MUST set mode to "pdd"
- If input is text or file without PDD structure, You MUST set mode to "description"
- You MUST inform user which mode was detected
- You MUST validate that PDD plans follow expected format with numbered steps
Parse and understand the input content based on detected mode.
**Constraints:**
- For PDD mode: You MUST parse implementation plan and extract steps/checklist status
- For PDD mode: You MUST determine target step based on step_number parameter or first uncompleted step
- For description mode: You MUST identify the core functionality being requested
- You MUST extract any technical requirements, constraints, or preferences mentioned
- You MUST determine the appropriate complexity level (Low/Medium/High)
- You MUST identify the likely technology stack or domain area
Organize requirements and determine task breakdown based on mode.
**Constraints:**
- For PDD mode: You MUST extract target step's title, description, demo requirements, and constraints
- For PDD mode: You MUST preserve integration notes with previous steps
- For PDD mode: You MUST identify which specific research documents (if any) are directly relevant to each task being created
- For description mode: You MUST identify specific functional requirements from the description
- You MUST infer reasonable technical constraints and dependencies
- You MUST create measurable acceptance criteria using Given-When-Then format
- You MUST prepare task breakdown plan for approval
Present task breakdown for user approval before generation.
**Constraints:**
- You MUST analyze content to identify logical sub-tasks for implementation
- You MUST present concise one-line summary for each planned code task
- You MUST show proposed task sequence and dependencies
- You MUST ask user to approve the plan before proceeding
- You MUST allow user to request modifications to the task breakdown
- You MUST NOT proceed to generate actual code task files until user explicitly approves
Create appropriate file structure based on mode and approved plan.
**Constraints:**
- For PDD mode: You MUST create a folder named `step{NN}` where NN is zero-padded (e.g., step01, step02, step10)
- For PDD mode: You MUST create multiple code task files within the step folder, named sequentially: `task-01-{title}.code-task.md`, `task-02-{title}.code-task.md`, etc.
- For PDD mode: You MUST break down the step into logical implementation phases focusing on functional components, NOT separate testing tasks
- For PDD mode: You MUST include "Reference Documentation" section with path to design/detailed-design.md as required reading
- For PDD mode: You MUST include specific research documents in "Additional References" only if they are directly relevant to the task (e.g., specific technology research for that component)
- For PDD mode: You MUST add a note instructing agents to read the detailed design before implementation
- For description mode: You MUST create single task or multiple tasks as planned
- You MUST generate task names using kebab-case format
- You MUST create files with `.code-task.md` extension
- You MUST follow the exact format specified in the Code Task Format section below
- You MUST include comprehensive acceptance criteria that cover the main functionality
- You MUST include unit test requirements as part of the acceptance criteria for each implementation task
- You MUST NOT create separate tasks for "add unit tests" or "write tests" because testing should be integrated into each functional implementation task
- You MUST provide realistic complexity assessment and required skills
- You MUST save files to the specified output directory
Inform user about generated tasks and next steps.
**Constraints:**
- You MUST list all generated code task files with their paths
- For PDD mode: You MUST provide the step demo requirements for context
- For description mode: You MUST provide a b