Loading...
Loading...
Found 46 Skills
Expert software architecture covering system design, distributed systems, microservices, scalability patterns, and technical decision-making.
Use when deciding where to catch errors. Use when errors propagate too far or not far enough. Use when designing component/service isolation.
Structurizr integration. Manage data, records, and automate workflows. Use when the user wants to interact with Structurizr data.
Clean Architecture principles and best practices from Robert C. Martin's book. This skill should be used when designing software systems, reviewing code structure, or refactoring applications to achieve better separation of concerns. Triggers on tasks involving layers, boundaries, dependency direction, entities, use cases, or system architecture.
Use when working with full stack orchestration full stack feature
Software architecture and system design - scalability patterns, reliability engineering, and the art of making technical trade-offs that survive productionUse when "system design, architecture, scalability, how should we structure, distributed, microservices, monolith, high availability, design the system, component diagram, architecture, system-design, scalability, reliability, distributed, api, modeling, c4" mentioned.
Creates comprehensive Technical Design Documents (TDD) following industry standards with mandatory sections, optional sections, and interactive gathering of missing information.
ALWAYS LOAD WHEN WORKING WITH PYSIDE6, QT, OR DESKTOP GUI CODE. PySide6 desktop apps: Manager→Service→Wrapper architecture, qasync integration, signals, system tray, testing.
Language-agnostic SOLID principles and DDD tactical patterns. Trigger: Always loaded for non-documentation code changes via sdd-apply.
Design and architect software systems. Plans system components, interactions, and deployment patterns for scalability and maintainability.
Breaks down feature requests into sequential, implementable tasks with code changes under 50 lines each. Use when planning new features, refactors, or multi-step changes to ensure logical ordering and no broken intermediate states.
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.