/extract-patterns
Extract reusable patterns and best practices from your existing codebase.
Overview
The /extract-patterns prompt analyzes your codebase to identify recurring patterns, architectural decisions, and implementation approaches. It helps you document what's working well and creates reusable templates for consistency.
When to Use
Use /extract-patterns when you want to:
- Document existing patterns before scaling the team
- Create consistency across your codebase
- Onboard new developers with actual patterns from your code
- Identify both good patterns and anti-patterns
- Build a library of reusable solutions
- Prepare for refactoring by understanding current patterns
Syntax
/extract-patterns [focus-area]Arguments
- focus-area (optional): Specific area to analyze (e.g., "authentication", "API design", "error handling")
- If omitted, analyzes the entire codebase
Examples
Full Codebase Analysis
/extract-patternsFocused Analysis
/extract-patterns authentication
/extract-patterns API endpoints
/extract-patterns database queries
/extract-patterns error handling
/extract-patterns state managementWhat It Does
- Scans Codebase: Searches for recurring patterns in your code
- Categorizes Patterns: Groups findings by type:
- Architecture patterns
- Implementation patterns
- Security patterns
- Testing patterns
- Error handling patterns
- Documents Patterns: Creates detailed documentation in
.orchestre/patterns/ - Identifies Anti-patterns: Flags problematic patterns to avoid
- Provides Examples: Shows actual code from your project
- Suggests Improvements: Recommends enhancements to existing patterns
Output Structure
Pattern Documentation
Each discovered pattern includes:
# Pattern: [Pattern Name]
## Description
What this pattern does and why it's used
## When to Use
Specific scenarios where this pattern applies
## Implementation
Code example from your codebase
## Benefits
- Why this pattern works well
- Problems it solves
## Considerations
- Trade-offs
- When not to use it
## Examples in Codebase
- `src/auth/middleware.ts` - Authentication middleware
- `src/api/users.ts` - User API implementationPattern Categories
Patterns are organized into categories:
Architecture Patterns
- Component structure
- Module organization
- Dependency injection
- Service layers
Implementation Patterns
- Data fetching
- State management
- Form handling
- Validation
Security Patterns
- Authentication
- Authorization
- Input sanitization
- API security
Testing Patterns
- Test structure
- Mocking strategies
- Test data management
Files Created
The command creates pattern documentation in:
.orchestre/patterns/
├── discovered/
│ ├── architecture/
│ ├── implementation/
│ ├── security/
│ └── testing/
├── anti-patterns.md
└── pattern-index.mdIntegration with Templates
Extracted patterns can be:
- Used as templates for new features
- Referenced by
/execute-taskfor consistency - Shared across teams
- Evolved into best practices
Best Practices
- Run Regularly: Extract patterns after major features
- Review Anti-patterns: Address problematic patterns
- Document Decisions: Add context to why patterns exist
- Share Knowledge: Use patterns for onboarding
- Evolve Patterns: Update as better approaches emerge
Pattern Evolution
Track how patterns evolve:
- Initial discovery with
/extract-patterns - Documentation with
/document-feature - Refinement through code reviews
- Standardization across the codebase
Common Focus Areas
API Patterns
/extract-patterns REST API
/extract-patterns GraphQL resolvers
/extract-patterns error responsesFrontend Patterns
/extract-patterns component structure
/extract-patterns hooks
/extract-patterns state managementBackend Patterns
/extract-patterns database access
/extract-patterns business logic
/extract-patterns background jobsTesting Patterns
/extract-patterns test structure
/extract-patterns test utilities
/extract-patterns mockingAdvanced Usage
Comparative Analysis
Extract patterns from different parts of your app:
/extract-patterns old-module
/extract-patterns new-moduleThen compare approaches to standardize.
Pre-refactoring Analysis
Before major refactoring:
/extract-patterns legacy-codeUnderstand existing patterns before changing them.
Team Alignment
Extract patterns from different team members' code:
/extract-patterns src/features/team-a
/extract-patterns src/features/team-bIdentify inconsistencies and align approaches.
Related Commands
/discover-context- Analyze project structure and dependencies/research- Research best practices for discovered patterns/document-feature- Document pattern usage in features/orchestrate- Plan standardization of patterns/review- Review code against established patterns
