## Spec **"Give structure before writing code"** - Fully compliant with Kiro's spec-driven development Unlike traditional code generation tools, it realizes Kiro's specification-driven development focused on bringing structure to development chaos. From minimal requirement input, it progressively develops from detailed product manager-level specifications to implementable designs, ensuring consistent quality from **prototype to production**. ### Usage ```bash # Request Spec Mode from Claude (minimal requirement input) "Create a spec for [feature description]" # Kiro's step-by-step development: # 1. Simple requirements → Automatic generation of detailed user stories # 2. Structured requirement descriptions using EARS notation # 3. Refinement of specifications through step-by-step dialogue # 4. Generation of 3 independent files: # - requirements.md: Requirement definitions using EARS notation # - design.md: Design including Mermaid diagrams and TypeScript interfaces # - tasks.md: Implementation plan with automatic application of best practices ``` ### Proven Results (Kiro Track Record) **Secure File Sharing App in 2 Days** ```bash "Create a spec for a file sharing system (with encryption)" → Production-level encrypted file sharing application completed in 2 days → Automatic application of security best practices → No additional prompts needed ``` **Game Development in One Night (For Beginners)** ```bash "Create a spec for a 2D puzzle game" → Open source developer with no game development experience → Game completed in one night → Kiro handles implementation logic, allowing developers to focus on creativity ``` **Weekend Prototype→Production** ```bash "Create a spec for an EC site product management system" → Concept to working prototype in one weekend → Consistent quality from prototype to production → Structured approach through spec-driven development ``` ### Basic Examples ```bash # Create spec for new feature (minimal input) "Product review system - Star rating functionality - Comment posting - Image upload" # Create spec for system feature "User authentication - OAuth support - Multi-factor authentication" # Create spec for API feature "Payment system API - Stripe integration - Security-focused" ``` ### Collaboration with Claude ```bash # Complex feature spec "Create a spec for chat functionality including WebSocket, real-time notifications, and history management" # Database integration feature spec "Create a spec for EC site inventory management functionality including product addition, inventory updates, and alert functionality" # Frontend feature spec "Create a spec for a React dashboard including graph display, filtering, and export functionality" # Backend feature spec "Create a spec for a RESTful API including authentication, validation, and logging" ``` ### Features of Spec Mode **Step-by-Step Dialogue Workflow** - Fully reproduces Kiro's original value of step-by-step discussion - Refines specifications collaboratively with users at each phase - Generates files through question resolution, option discussion, and approval processes **Three Phases of Interactive Development** - **Phase 1**: Requirements Discovery → Discussion → Approval → `requirements.md` generation - **Phase 2**: Design Exploration → Discussion → Approval → `design.md` generation - **Phase 3**: Implementation Planning → Discussion → Approval → `tasks.md` generation **Dynamic Specification Development** - Resolves requirement ambiguities through dialogue - Presents and discusses technical options - Explains trade-offs and confirms decisions ### Detailed Examples ```bash # Complex system feature "Create a spec for an online payment system including Stripe integration, security, and error handling" # Frontend feature "Create a spec for a React component including state management, property design, and testing" # Backend feature "Create a spec for a GraphQL API including schema design, resolvers, and authentication" # DevOps feature "Create a spec for a CI/CD pipeline including test automation, deployment, and monitoring" ``` ### Phase-by-Phase Dialogue Workflow #### Phase 1: Requirements Discovery & Discussion **1. Automatic Expansion from Minimal Input (Kiro Style)** ```text User: "User management system - Login functionality - Profile editing - Administrator permissions" Claude: "I'll generate detailed user stories from your requirements. Is this understanding correct? Automatically generated user stories: - User registration and authentication (OAuth compatible) - Profile management (avatar, settings) - Permission management (RBAC) - Password reset functionality - Security audit logs I've added some details you didn't mention. Anything else we need?" ``` **2. Structured Requirements Description Using EARS Notation** ```text Claude: "Let me structure this using EARS notation: Here are the requirements in EARS format: WHEN a user attempts to log in GIVEN they enter the correct email address and password THEN the system shall confirm authentication AND redirect to the dashboard on success WHILE a user is on the profile editing screen THE SYSTEM SHALL perform real-time validation AND display a preview of changes WHERE access is attempted to a feature requiring administrator privileges IS when the system shall check permission levels AND deny access if insufficient" ``` **3. Automatic Completion of Edge Cases and Security Requirements** ```text Claude: "Following best practices, I've also thought of these: Security requirements (auto-added): - Brute force protection - Session management and timeouts - CSRF and XSS protection - Password strength rules Edge cases (auto-detected): - Multiple login handling - Account lockout - Data consistency during migration - High traffic handling Do these look good?" ``` **5. Phase 1 Completion and Approval** ```text Claude: "Requirements phase done. Should I create requirements.md?" → "Yes" → generates requirements.md ``` #### Phase 2: Design Exploration & Discussion **1. Codebase Analysis + Automatic Design Proposal (Kiro Style)** ```text Claude: "After analyzing your codebase, here's my recommended architecture: Codebase analysis results: - Authentication: JWT + Express.js (v4.18.x) - Database: PostgreSQL (v14+) - Frontend: React + TypeScript (v18+) - Existing patterns: Repository pattern, service layer separation Kiro recommended architecture: - Clean Architecture compliant - Domain-Driven Design elements - Partial application of CQRS pattern - Automated security best practices Shall we proceed with this design?" ``` **2. Visual Design with Mermaid Diagrams** ```text Claude: "I've automatically generated a system design using Mermaid diagrams: Automatically generated architecture diagram: graph TB Client[React Client] --> API[Express API Gateway] API --> Auth[Auth Service] API --> User[User Service] API --> Profile[Profile Service] Auth --> AuthDB[(Auth Database)] User --> UserDB[(User Database)] Profile --> ProfileDB[(Profile Database)] Auth --> JWT[JWT Service] Auth --> OAuth[OAuth Provider] Shall I also generate a data flow diagram?" ``` **3. Automatic Generation of TypeScript Interfaces** ```text Claude: "I'll automatically generate TypeScript interfaces based on the design: Automatically generated TypeScript interfaces: // Domain entities interface User { readonly id: UserId; readonly email: Email; readonly profile: UserProfile; readonly auth: AuthSettings; readonly permissions: Permission[]; readonly createdAt: Date; readonly updatedAt: Date; } interface UserProfile { readonly displayName: string; readonly avatar: AvatarUrl; readonly preferences: UserPreferences; } interface AuthSettings { readonly passwordHash: PasswordHash; readonly mfaEnabled: boolean; readonly lastLoginAt: Date; readonly failedAttempts: number; } // Use cases interface UserRepository { findById(id: UserId): Promise; findByEmail(email: Email): Promise; save(user: User): Promise; } interface AuthenticationService { authenticate(credentials: LoginCredentials): Promise; refreshToken(token: RefreshToken): Promise; } Shall we proceed with this interface design?" ``` **4. Phase 2 Completion and Approval** ```text Claude: "The Design Phase is complete. May I generate design.md?" → "Proceed" → design.md generation ``` #### Phase 3: Implementation Planning & Discussion **1. Automatic Application of Best Practices (Kiro Style)** ```text Claude: "I've generated an implementation plan with automatic application of Kiro's best practices: Automatically generated implementation strategy: 1. Security-first development - Automatic incorporation of OWASP Top 10 countermeasures - Automatic implementation of encryption and hashing - Automatic generation of security tests 2. Enforcement of clean architecture - Automatic implementation of layer separation - Automatic application of dependency inversion - Enforcement of testable design 3. Performance optimization - Automatic implementation of caching strategy - Database optimization - Utilization of asynchronous processing Shall we proceed with this approach?" ``` **2. Automatic Setting of Quality Checkpoints** ```text Claude: "I've automatically set quality checkpoints for each implementation phase: Automatic quality assurance process: Phase 3a: Backend implementation - [ ] Security scan (SAST/DAST) - [ ] API specification test (OpenAPI compliant) - [ ] Performance test (load/response) - [ ] Vulnerability scan (dependencies/CVE) Phase 3b: Frontend implementation - [ ] Accessibility test (WCAG 2.1 AA) - [ ] Browser compatibility test - [ ] Responsive design verification - [ ] Security header confirmation Phase 3c: Integration/Deployment - [ ] E2E test suite - [ ] CI/CD pipeline setup - [ ] Monitoring/logging setup - [ ] Production environment security audit All will be executed automatically. Are there any additional quality standards?" ``` **3. Automatic Analysis of Dependencies and Risk Mitigation** ```text Claude: "I've automatically analyzed the implementation order and risk mitigation measures: Optimized implementation order: Week 1: Infrastructure and security foundation - Database design and schema creation - Authentication foundation (JWT + session management) - Security middleware implementation - Basic API endpoints Week 2: Core functionality implementation - User management functionality - Profile management functionality - Permission management system - Validation and error handling Week 3: Advanced features and optimization - Multi-factor authentication implementation - Audit log functionality - Performance optimization - Frontend integration Automatically detected risk mitigation measures: - Multi-factor authentication: Gradual rollout (SMS→app authentication) - Session management: Redis cluster configuration - High traffic: Rate limiting + CDN utilization - Data consistency: Enhanced transaction management Is this plan acceptable?" ``` **4. Phase 3 Completion and Approval** ```text Claude: "The Implementation Planning Phase is complete. May I generate tasks.md?" → "Proceed" → tasks.md generation ``` ### Kiro-Specific Features **EARS Notation (Easy Approach to Requirements Syntax)** ```text # Kiro Standard EARS Notation Patterns WHEN [situation/trigger] GIVEN [precondition] THEN [system behavior] AND [additional behavior] WHILE [state/process] THE SYSTEM SHALL [mandatory behavior] AND [related behavior] WHERE [function/component] IS [condition/state] THE SYSTEM SHALL [corresponding behavior] ``` **Automatic Generation Features** - **Mermaid diagrams**: Automatic generation of architecture and data flow diagrams - **TypeScript interfaces**: Automatic creation of type definitions based on design - **Best practices**: Automatic incorporation of security and performance measures - **Quality checkpoints**: Automatic setting of phase-specific quality standards **Hooks Integration** - Automatic quality checks on file save - Automatic application of code standards - Automatic execution of security scans - Automatic verification of OWASP Top 10 countermeasures **Prototype→Production Quality Assurance** - Consistent design through structured approach - Enforcement of security-first development - Automatic application of scalable architecture - Integration of continuous quality management ### Notes **Scope of Application** - Spec Mode is optimized for feature implementation - Use normal implementation format for simple fixes or small changes - Recommended for new feature development or complex feature modifications **Quality Assurance** - Clarification of completion criteria at each stage - Design review before implementation - Comprehensive quality standards including testing and accessibility **Operational Notes** - Resolve requirement ambiguities before design phase - Generate implementation tasks after design completion - Emphasize approval process at each stage ### Trigger Phrases and Controls #### Step-by-Step Workflow Control **Start Triggers** - "Create a spec for [feature name]" - "I want to develop [feature name] using spec-driven development" - "Design [feature name] from specifications" **Phase Progress Control** - **"Proceed"**: Complete current phase, generate file, move to next phase - **"Revise"**: Adjust or improve content within current phase - **"Restart"**: Restart current phase from beginning - **"Explain in detail"**: Provide more detailed explanations or options - **"Skip"**: Skip current phase and move to next (not recommended) **File Generation Timing** ```text Phase 1 completion → "Proceed" → requirements.md generation Phase 2 completion → "Proceed" → design.md generation Phase 3 completion → "Proceed" → tasks.md generation ``` ### Execution Example (Step-by-Step Flow) ```bash # Usage example User: "Create a spec for a user management system" # Phase 1: Requirements Discovery Claude: [Begins requirement confirmation and discussion] User: [Responds, discusses, makes revisions] Claude: "The Requirements Phase is complete. May I proceed?" User: "Proceed" → requirements.md generation # Phase 2: Design Exploration Claude: [Begins design proposal and discussion] User: [Discusses technology selection and architecture] Claude: "The Design Phase is complete. May I proceed?" User: "Proceed" → design.md generation # Phase 3: Implementation Planning Claude: [Begins implementation plan discussion] User: [Discusses priorities, risks, and effort] Claude: "The Implementation Phase is complete. May I proceed?" User: "Proceed" → tasks.md generation # Completion Claude: "Spec-driven development preparation is complete. You can begin implementation." ``` ### Differences from /plan | Feature | /plan | /spec | | ---------------------- | ------------------------------ | ------------------------------------------------------------------------ | | Target | General implementation plan | Feature specification-driven development | | Output format | Single plan document | 3 independent files (requirements.md, design.md, tasks.md) | | Requirement definition | Basic requirement organization | Detailed acceptance criteria using EARS notation | | Design | Technology selection focused | Codebase analysis-based | | Implementation | General task decomposition | Dependency-aware sequence | | Quality assurance | Basic test strategy | Comprehensive quality requirements (testing, accessibility, performance) | | Synchronization | Static plan | Dynamic spec updates | ### Recommended Use Cases **Recommended for spec use** - New feature development - Complex feature modifications - API design - Database design - UI/UX implementation **Recommended for plan use** - System-wide design - Infrastructure construction - Refactoring - Technology selection - Architecture changes