architecture

Guide software architecture decisions with ADR templates and pattern selection.

Updated Jan 31, 2026
One-click install
npx skills add https://github.com/tuyenht/Antigravity-Core --skill architecture-tuyenht
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: architecture
Source: https://github.com/tuyenht/Antigravity-Core/tree/main/.agent/skills/architecture
Command: npx skills add https://github.com/tuyenht/Antigravity-Core --skill architecture-tuyenht

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a structured framework for making critical software architecture decisions, ensuring that choices are well-reasoned, documented, and aligned with project constraints and goals.

Core Features & Use Cases

  • Decision Framework: Guides users through identifying requirements, exploring options, and documenting trade-offs using ADRs (Architecture Decision Records).
  • Pattern Selection: Offers decision trees and guidelines for choosing appropriate architectural patterns (e.g., Microservices, DDD, Repository).
  • Context Discovery: Helps gather essential project context (scale, team, timeline, domain, constraints) before design begins.
  • Use Case: A team is starting a new SaaS product and needs to decide on the core architectural patterns. They use this Skill to understand trade-offs between monoliths and microservices, select appropriate data access patterns, and document their final decision.

Quick Start

Use the architecture skill to help decide on the best pattern for a new microservice.

Frequently Asked Questions about architecture

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

FAQPage Schema
What is an Architecture Decision Record and how does it help with software design?

An Architecture Decision Record (ADR) documents software design choices by capturing requirements, exploring options, and rationalizing trade-offs. Using ADRs ensures architectural decisions are well-reasoned, systematically documented, and aligned with project constraints and goals.

How do I choose between a monolith and microservices for a new SaaS architecture?

To choose between a monolith and microservices, gather essential project context like scale, team size, and timeline, then evaluate the trade-offs of each architectural pattern. This systematic evaluation ensures you select a design that defers unnecessary complexity while meeting system requirements.

How do I document trade-offs when making architectural decisions for complex systems?

You document trade-offs for complex systems by applying a structured decision framework that evaluates options against project constraints. This process enforces simplicity by systematically rationalizing architectural choices and recording the final evaluation within an Architecture Decision Record.

When do I need domain-driven design patterns for my software architecture?

You need domain-driven design (DDD) patterns when your software architecture requires structured pattern selection to manage complex business domains. A decision tree helps evaluate your specific project context and constraints to determine if DDD provides the appropriate structural boundaries for your system.

What is the best way to start designing software architectures for a new microservice?

The best way to start designing software architectures for a new microservice is to perform context discovery to understand scale, domain, and constraints before design begins. This prerequisite step guides the pattern selection process and ensures choices enforce simplicity and defer complexity.

What are the limitations of deferring complexity in software architecture decisions?

The limitation of deferring complexity in software architecture decisions is the risk of underestimating future scale or integration requirements. While this principle enforces initial simplicity, you must systematically document anticipated trade-offs and constraints in an ADR to ensure the architecture remains adaptable.