Loading...
Loading...
Found 58 Skills
Use when working with fundamental software development knowledge — patterns, algorithms, architecture, and craftsmanship principles drawn from canonical published works. USE FOR: development fundamentals, pattern selection, architecture decisions, algorithm choice, code quality principles, choosing between architectural styles DO NOT USE FOR: specific pattern implementations (use sub-skills: design-patterns, integration-patterns, algorithms, etc.), testing strategy (use testing), infrastructure (use iac)
[Planning] ⚡⚡ Brainstorm a feature
Use this skill when designing, reviewing, or refactoring software architecture following Robert C. Martin's (Uncle Bob) Clean Architecture principles. Triggers on project structure decisions, layer design, dependency management, use case modeling, boundary crossing patterns, component organization, and separating business rules from frameworks. Covers the Dependency Rule, concentric layers, component cohesion/coupling, and boundary patterns.
Expert software architecture council with 6 advisors (Fowler, Beck, Uncle Bob, Newman, Hightower, Kim) for code design, architecture patterns, infrastructure, and development practices.
Use when designing software architecture, refactoring code structure, solving recurring design problems, or when code exhibits symptoms like tight coupling, rigid hierarchies, scattered responsibilities, or difficult-to-test components. Also use when choosing between architectural approaches or reviewing code for structural improvements.
Use when designing, planning, implementing, or reviewing any non-trivial change — enforces small, focused modules so any change fits in context without compaction
Você é uma Arquiteta de Software Sênior especialista em Clean Code e engenharia de software. Use esta skill sempre que o usuário pedir para revisar, criticar, refatorar ou avaliar trechos de código, funções, classes, módulos ou arquiteturas inteiras. Ative também quando o usuário mencionar problemas como "código duplicado", "classe muito grande", "difícil de manter", "código espaguete", "muita dependência", "quero melhorar esse código", "está violando SOLID?", "como refatorar isso?", "esse código está limpo?", "tem code smell aqui?", "como aplicar injeção de dependência?", "preciso de um code review", ou qualquer variação dessas frases. Ative inclusive quando o usuário perguntar sobre boas práticas de design, padrões de código, ou pedir explicações sobre KISS, DRY, YAGNI, TDA, SOLID e seus subprincípios. Se estiver no SynkOS, chame `pane_set_identity` com skill="clean-code-architect" e role="architect".
Guardião da arquitetura de software no SynkOS. Use esta skill quando o usuário pedir para propor ou revisar a arquitetura de um sistema, avaliar tradeoffs entre tecnologias ou abordagens, criar um ADR (Architecture Decision Record), desenhar um modelo de dados ou contrato de API, ou fazer perguntas como "qual stack usar para X?", "como estruturar esse serviço?", "quais são os tradeoffs de Y vs Z?", "documente as decisões técnicas", "revise essa arquitetura". Ative também para discovery brownfield (entender o que já existe antes de propor mudanças), para cross-cutting concerns como segurança e performance, e para revisar designs propostos pelas equipes de implementação.
Software architecture and UI/UX principles for building genuinely new solutions, not derivative work. Use when designing features, architecting software, brainstorming apps, reviewing designs, or during strategy discussions. Focuses on first-principles thinking, simplicity where it matters, and creating rather than commenting.
Analyzes coupling between modules using the three-dimensional model (strength, distance, volatility) from "Balancing Coupling in Software Design". Use when asking "are these modules too coupled?", "show me dependencies", "analyze integration quality", "which modules should I decouple?", "coupling report", or evaluating architectural health. Do NOT use for domain boundary analysis (use domain-analysis) or component sizing (use component-identification-sizing).
Domain-Driven Design patterns for TypeScript. Use when implementing ubiquitous language, value objects, entities, aggregates, domain events, domain services, or bounded contexts. Only applies to projects that explicitly use DDD. Do NOT use for simple CRUD or projects without domain modeling.
Technical design interview + adversarial review → living doc Technical Design section ready to implement. Stateful: detects existing sections and resumes where needed. Triggers: 'architect this,' 'how should we build,' 'design the tech,' post-define/design. Not for: scoping (explore), requirements (define), UX (design).