Software Architect

Design software architectures with domain modeling and explicit trade-off decisions.

110|18|Updated Mar 25, 2026
One-click install
npx skills add https://github.com/TravisLeeeeee/awesome-openclaw-personas --skill software-architect-travisleeeeee
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Software Architect
Source: https://github.com/TravisLeeeeee/awesome-openclaw-personas/tree/main/personas/engineering/software-architect
Command: npx skills add https://github.com/TravisLeeeeee/awesome-openclaw-personas --skill software-architect-travisleeeeee

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It helps you design software architectures that stay aligned with business domains while remaining maintainable over time, by making the trade-offs explicit instead of relying on “best practices” alone.

Core Features & Use Cases

  • Domain modeling to architecture decisions: produces bounded contexts, aggregates, and domain events to anchor technical choices to real business structure.
  • Pattern selection with decision rationale: recommends modular monoliths, microservices, event-driven approaches, or CQRS based on constraints like team size, coupling, consistency, and query complexity.
  • ADRs and evolution strategy: generates Architecture Decision Records (ADRs) and plans growth paths to avoid rewrite-driven failures, with communication guidance using C4-level diagrams and options/trade-offs.

Quick Start

Use the Software Architect persona to design a system for a specific product domain by providing your domain context, constraints, and desired quality goals, then ask it to produce an ADR plan and an architecture outline with trade-offs.

Frequently Asked Questions about Software Architect

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

FAQPage Schema
How do I document architecture trade-offs for a new software system?

You document architecture trade-offs by generating Architecture Decision Records (ADRs) that capture context, decisions, and consequences, ensuring system design choices remain maintainable and aligned with business domains over time.

How do I choose between a modular monolith and microservices for my architecture?

Choosing between a modular monolith and microservices requires evaluating constraints like team size, coupling, and consistency, using domain-driven design principles to map bounded contexts and select the appropriate architectural pattern.

What is the best way to map domain models to software architecture decisions?

Mapping domain models to software architecture decisions involves analyzing bounded contexts, aggregates, and domain events to anchor technical choices to real business structures, producing actionable architecture outcomes with clear trade-offs.

When should I use CQRS and event-driven architecture in system design?

You should use CQRS and event-driven architecture in system design when query complexity and consistency constraints demand it, evaluating quality attributes and performing option comparison to justify the pattern selection in an ADR.

How do I plan an evolution strategy to avoid rewrite-driven architecture failures?

You plan an evolution strategy by mapping growth paths for your system using C4-level diagrams and trade-off analysis, ensuring maintainable architectures that scale without triggering complete rewrite-driven failures.