# ColaFlow Agent System - Usage Examples This document provides practical examples of how to use the ColaFlow multi-agent system. ## Table of Contents 1. [Simple Tasks](#simple-tasks) 2. [Complex Features](#complex-features) 3. [Parallel Execution](#parallel-execution) 4. [Sequential Workflows](#sequential-workflows) 5. [Code Generation](#code-generation) 6. [Design and Planning](#design-and-planning) --- ## Simple Tasks ### Example 1: Generate a PRD **Your Request**: ``` Generate a PRD for the "AI Task Auto-Creation" feature ``` **What Happens**: ``` Main Coordinator → Calls product-manager agent Sub Agent Response: - Analyzes the feature requirements - Generates complete PRD document with: - Background & Goals - Requirements - Acceptance Criteria - Timeline Main Coordinator → Returns integrated PRD to you ``` --- ### Example 2: Design System Architecture **Your Request**: ``` Design the architecture for MCP Server integration ``` **What Happens**: ``` Main Coordinator → Calls architect agent Sub Agent Response: - Designs MCP Server architecture - Defines Resources and Tools - Plans security mechanisms (diff preview) - Recommends tech stack Main Coordinator → Returns architecture design to you ``` --- ## Complex Features ### Example 3: Implement Complete Feature **Your Request**: ``` Implement the Kanban board drag-and-drop feature with the following requirements: - Users can drag tasks between columns - Status updates automatically - Optimistic UI updates with rollback on error - Works smoothly with 100+ tasks ``` **What Happens**: ``` Main Coordinator analyzes and creates execution plan: Step 1: Architecture (architect agent) → Design component architecture → Define state management approach → Plan API contract Step 2: Requirements (product-manager agent) → Define acceptance criteria → Specify edge cases → Set performance requirements Step 3: Backend (backend agent) → Implement PATCH /api/issues/:id/status endpoint → Add optimistic locking → Write unit tests Step 4: Frontend (frontend agent) → Implement drag-and-drop with react-beautiful-dnd → Add optimistic UI updates → Handle error rollback → Implement virtualization for performance Step 5: Testing (qa agent) → Write E2E tests for drag-and-drop → Performance test with 100+ tasks → Test error scenarios Step 6: UX (ux-ui agent) → Design drag feedback animations → Define success/error states Main Coordinator → Integrates all outputs and presents complete implementation ``` --- ## Parallel Execution ### Example 4: Kickoff New Project Phase **Your Request**: ``` We're starting M2 (MCP Server implementation). Prepare the team. ``` **What Happens (Parallel Execution)**: ``` Main Coordinator calls multiple agents in PARALLEL: ┌─────────────────────────────────────────────────────┐ │ Task 1: product-manager │ │ → Create M2 project plan │ │ → Define milestones and deliverables │ │ │ │ Task 2: architect │ │ → Design detailed MCP Server architecture │ │ → Define API specifications │ │ │ │ Task 3: backend │ │ → Set up project structure for MCP Server │ │ → Create initial boilerplate code │ │ │ │ Task 4: qa │ │ → Draft M2 test strategy │ │ → Define quality gates │ └─────────────────────────────────────────────────────┘ All execute simultaneously ⚡ Main Coordinator → Waits for all to complete → Integrates results ``` **How to trigger parallel execution**: Main coordinator makes multiple Task tool calls in a single message. --- ## Sequential Workflows ### Example 5: Bug Investigation and Fix **Your Request**: ``` The login API is returning 500 errors intermittently ``` **What Happens (Sequential Execution)**: ``` Step 1: qa agent → Investigate error logs → Identify error pattern → Reproduce the issue → Reports: "Race condition in session store" ↓ (Wait for results) Step 2: backend agent (based on QA findings) → Reviews session store implementation → Identifies root cause → Implements fix with proper locking → Writes test to prevent regression ↓ (Wait for results) Step 3: qa agent (verification) → Runs regression tests → Verifies fix works → Confirms no new issues introduced → Reports: "Fix verified, ready for deployment" Main Coordinator → Reports complete investigation and fix ``` --- ## Code Generation ### Example 6: Generate API Endpoint **Your Request**: ``` Create a REST API endpoint for updating issue priority: - PATCH /api/issues/:id/priority - Validate priority (low, medium, high, urgent) - Log the change in audit trail - Return updated issue ``` **What Happens**: ``` Main Coordinator → Calls backend agent Backend Agent Generates: 1. Controller code: ```typescript @Patch(':id/priority') async updatePriority( @Param('id') id: string, @Body() dto: UpdatePriorityDto, @CurrentUser() user: User ): Promise { return this.issueService.updatePriority(id, dto.priority, user.id); } ``` 2. Service code: ```typescript async updatePriority( id: string, newPriority: Priority, userId: string ): Promise { const issue = await this.findById(id); const oldPriority = issue.priority; issue.priority = newPriority; const updated = await this.issueRepository.save(issue); await this.auditService.log({ entityType: 'Issue', entityId: id, action: 'UPDATE_PRIORITY', userId, changes: { priority: { from: oldPriority, to: newPriority } }, }); return updated; } ``` 3. DTO validation: ```typescript export const UpdatePrioritySchema = z.object({ priority: z.enum(['low', 'medium', 'high', 'urgent']), }); export type UpdatePriorityDto = z.infer; ``` 4. Unit tests: ```typescript describe('updatePriority', () => { it('should update priority and log audit', async () => { const updated = await service.updatePriority('issue-1', 'urgent', 'user-1'); expect(updated.priority).toBe('urgent'); expect(auditService.log).toHaveBeenCalled(); }); }); ``` Main Coordinator → Returns complete, production-ready code ``` --- ## Design and Planning ### Example 7: Design Sprint Planning UI **Your Request**: ``` Design the Sprint Planning interface where PM can: - Create new sprint - Drag tasks from backlog to sprint - Set sprint goals and dates - View capacity vs planned work ``` **What Happens**: ``` Main Coordinator coordinates design process: Step 1: product-manager agent → Define user stories → Specify acceptance criteria → Identify edge cases Step 2: ux-ui agent → Create user flow diagram → Design wireframes → Create high-fidelity mockups in Figma → Define interaction states → Specify animations Delivers: - User persona analysis - User journey map - Low-fidelity wireframes - High-fidelity Figma mockups - Component specifications - Interaction guidelines Step 3: frontend agent (optional, if implementation requested) → Reviews designs → Identifies technical considerations → Suggests component architecture Main Coordinator → Integrates design deliverables ``` --- ## Example 8: Full Feature Development Lifecycle **Your Request**: ``` Implement the "AI Daily Report Generation" feature from start to finish ``` **What Happens** (Full lifecycle): ``` Phase 1: PLANNING (Parallel) ┌─────────────────────────────────────────────────────┐ │ product-manager → Write PRD │ │ architect → Design architecture │ │ ux-ui → Design UI mockups │ └─────────────────────────────────────────────────────┘ ↓ Phase 2: IMPLEMENTATION (Sequential + Parallel) Step 1: ai agent → Design prompt template for daily reports → Implement report generation logic → Set up caching strategy Step 2a: backend agent (parallel with 2b) → Create POST /api/reports/daily endpoint → Integrate AI service → Implement diff preview for AI reports Step 2b: frontend agent (parallel with 2a) → Create DailyReport component → Add "Generate Report" button → Display AI-generated report with approval UI ↓ Phase 3: QUALITY ASSURANCE qa agent → Write E2E tests for report generation → Test AI prompt quality → Verify approval workflow → Performance test ↓ Phase 4: DELIVERY product-manager agent → Update documentation → Prepare release notes → Update project timeline Main Coordinator → Presents complete feature ready for deployment ``` --- ## Tips for Effective Usage ### 1. Be Specific ❌ Bad: "Make the app better" ✅ Good: "Optimize the Kanban board rendering for 100+ tasks using virtualization" ### 2. Provide Context ❌ Bad: "Add authentication" ✅ Good: "Add JWT-based authentication to our NestJS backend, following the architecture in product.md" ### 3. Break Down Large Requests ❌ Bad: "Build the entire ColaFlow system" ✅ Good: "Let's start with M1. First, implement the core project/task data models" ### 4. Leverage Parallel Execution When tasks are independent, request them together: ✅ "Prepare for M2: Create project plan, design MCP architecture, and draft test strategy" ### 5. Review and Iterate After receiving output from agents: - Review the deliverables - Ask for clarifications or modifications - Request additional details if needed --- ## Common Workflows ### Workflow 1: New Feature 1. `product-manager` → PRD 2. `architect` → Architecture design 3. `backend` + `frontend` (parallel) → Implementation 4. `qa` → Testing 5. `product-manager` → Documentation ### Workflow 2: Bug Fix 1. `qa` → Reproduce and diagnose 2. `backend` or `frontend` → Fix implementation 3. `qa` → Verify fix ### Workflow 3: Performance Optimization 1. `qa` → Performance profiling 2. `architect` → Optimization strategy 3. `backend`/`frontend` → Implement optimizations 4. `qa` → Verify improvements ### Workflow 4: UI/UX Enhancement 1. `ux-ui` → Design improvements 2. `frontend` → Implementation 3. `qa` → Usability testing --- ## Getting Help If you're unsure which agent to use, just ask the main coordinator: ``` "I need to [describe your goal]. Which agents should work on this?" ``` The main coordinator will create an execution plan and route tasks appropriately. Happy coding with the ColaFlow agent system! 🚀