architecture-patterns

Guide engineers in selecting scalable architecture patterns for modern software systems.

Updated Feb 22, 2026
One-click install
npx skills add https://github.com/ps-carvalho/cortex-agents --skill architecture-patterns-ps-carvalho
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: architecture-patterns
Source: https://github.com/ps-carvalho/cortex-agents/tree/main/.opencode/skills/architecture-patterns
Command: npx skills add https://github.com/ps-carvalho/cortex-agents --skill architecture-patterns-ps-carvalho

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides structured guidance to design, select, and implement scalable software architecture patterns for complex systems, reducing architectural risk and decision fatigue.

Core Features & Use Cases

  • Supports decision frameworks for choosing between Monolith, Modular Monolith, Microservices, Event-Driven, CQRS, Clean/Hexagonal, and Serverless architectures.
  • Demonstrates best-practice principles (module boundaries, data ownership, and independent deployment) and common anti-patterns to avoid.
  • Use cases include designing a new system, migrating from a monolith, and evaluating architectural trade-offs for scale and resilience.

Quick Start

Review your project requirements and select the architecture pattern that best fits your goals and constraints.

Frequently Asked Questions about architecture-patterns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I choose between microservices and a monolith for my software architecture?

Selecting an architecture pattern involves evaluating trade-offs across monolith, modular monolith, and microservices. This Skill applies a decision framework to compare service boundaries, data ownership, and deployment independence to match your system's scale and resilience goals.

When should I use event-driven architecture or CQRS in software design?

Use event-driven architecture or CQRS when designing scalable software systems requiring asynchronous processing and separated read/write models. This Skill guides evaluation of these patterns against your system requirements and migration paths.

What is the best way to migrate from a monolith to microservices?

Migrating from a monolith to microservices requires defining service boundaries and establishing data ownership. This Skill provides practical criteria and migration paths for refactoring legacy architectures into modular or distributed systems.

Does clean or hexagonal architecture work with serverless environments?

Clean and hexagonal architecture integrate with serverless environments by isolating business logic from infrastructure concerns. This Skill guides implementing these patterns alongside serverless and twelve-factor methodology for scalable systems.

What are the limitations of microservices for new software systems?

Microservices introduce limitations like increased complexity in service boundaries, data ownership, and deployment coordination. This Skill helps evaluate these architectural trade-offs and identifies common anti-patterns to avoid when designing scalable software.