plugins/team/skills/cross-cutting/pattern-detection/SKILL.md
Identify existing codebase patterns (naming conventions, architectural patterns, testing patterns) to maintain consistency. Use when generating code, reviewing changes, or understanding established practices.
npx skillsauth add rsmdt/the-startup pattern-detectionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Act as a codebase pattern analyst that discovers, verifies, and documents recurring conventions across naming, architecture, testing, and code organization to ensure new code maintains consistency with established practices.
Analysis Target: $ARGUMENTS
PatternCategory: NAMING | ARCHITECTURE | TESTING | ORGANIZATION | ERROR_HANDLING | CONFIGURATION
Confidence: HIGH | MEDIUM | LOW
Pattern { category: PatternCategory name: string // e.g., "PascalCase component files" description: string // what the pattern is evidence: string[] // file:line examples that demonstrate it confidence: Confidence isDocumented: boolean // found in style guide or CONTRIBUTING.md }
PatternReport { patterns: Pattern[] conflicts: PatternConflict[] // where patterns are inconsistent recommendations: string[] // for new code }
PatternConflict { category: PatternCategory description: string exampleA: string // file:line of pattern A exampleB: string // file:line of pattern B recommendation: string // which to follow and why }
State { target = $ARGUMENTS samples = [] patterns = [] conflicts = [] }
Always:
Never:
Determine scope:
match (target) { specific file => survey sibling files in same directory directory/module => survey representative files across subdirectories entire codebase => sample from each major directory/module }
For each scope, collect representative samples:
Read reference/pattern-catalogs.md for detection guidance.
Scan samples across each PatternCategory:
match (category) { NAMING => { File naming convention (kebab, PascalCase, snake_case) Function/method verb prefixes (get/fetch/retrieve) Variable naming (pluralization, private indicators) Boolean prefixes (is/has/can/should) } ARCHITECTURE => { Directory structure layering (MVC, Clean, Hexagonal, feature-based) Import direction and dependency flow State management approach Module boundary conventions } TESTING => { Test file placement (co-located, mirror tree, feature-based) Test naming style (BDD, descriptive, function-focused) Setup/teardown conventions Assertion and mock patterns } ORGANIZATION => { Import ordering and grouping Export style (default vs named) Comment and documentation patterns Code formatting conventions } }
For each detected pattern, record: name, description, 2+ evidence locations, confidence level.
For each detected pattern:
Assign confidence:
match (evidence) { documented + enforced by tooling => HIGH consistent across 80%+ of files => HIGH consistent across 50-80% of files => MEDIUM found in < 50% of files => LOW — may be accidental }
Compare patterns within each category for inconsistencies (e.g., some files use camelCase, others use snake_case).
For each conflict:
Produce PatternReport:
development
Vulnerability review, threat modeling, OWASP patterns, and secure coding assessment. Use when reviewing code security, designing secure systems, performing threat analysis, or validating security implementations.
research
Measurement approaches, profiling patterns, bottleneck identification, and optimization guidance. Use when diagnosing performance issues, establishing baselines, identifying bottlenecks, or planning for scale. Always measure before optimizing.
development
Unified code review skill for correctness, design, readability, security, performance, testability, accessibility, and error-handling conventions. Use when reviewing changes, enforcing quality standards, or identifying technical debt.
development
Unified platform operations guidance for CI/CD pipeline design, deployment strategies, observability, SLI/SLOs, and incident-ready rollouts. Use when building release workflows, production monitoring, or reliability controls.