Source profileQuality 93/100

vasilyu1983/AI-Agents-public/frameworks/shared-skills/skills/software-architecture-design/SKILL.md

software-architecture-design

Designs runtime and platform architecture inside a chosen solution. Use when deciding modular monolith vs services, consistency, resilience, or estate topology.

Source repository stars
82
Declared platforms
2
Static risk flags
1
Last source update
2026-08-21
Source checked
2026-08-28

Decision brief

What it does: where it fits

Use this skill for deep software and platform architecture decisions inside a known solution shape rather than implementation details within a single service or component.

Best for

  • Software shape inside a known solution: Turning a chosen solution shape into runtime boundaries, bounded contexts, and platform decisions
  • System decomposition: Deciding between monolith, modular monolith, microservices
  • Architecture patterns: Event-driven, CQRS, layered, hexagonal, serverless

Not for

  • Cross-system solution design (business flow, target state, integration landscape, phased transition across systems) → software-solution-architecture
  • Single-service implementation (routes, controllers, business logic) → software-backend

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexDeclaredSource recordInstall path and trigger
Claude CodeDeclaredSource recordInstall path and trigger
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/vasilyu1983/AI-Agents-public --skill "frameworks/shared-skills/skills/software-architecture-design"
Safe inspection promptEditorial

Inspect the Agent Skill "software-architecture-design" from https://github.com/vasilyu1983/AI-Agents-public/blob/53f6cb73ea53a2646e3e7d4665062ad66f3683ac/frameworks/shared-skills/skills/software-architecture-design/SKILL.md at commit 53f6cb73ea53a2646e3e7d4665062ad66f3683ac. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Workflow (System-Level)

    Use this workflow when a user asks for architecture recommendations, decomposition, or major platform decisions.

    Clarify: problem statement, non-goals, constraints, and success metricsCapture quality attributes: availability, latency, throughput, durability, consistency, security, compliance, costDecide workload shape: deterministic workflow, single-agent, or multi-agent; synchronous vs asynchronous
  2. 02

    How to Freshness-Check

    1. Start from data/sources.json and prefer official docs, standards, release notes, and lifecycle pages. 2. Run a targeted web search for the specific architecture pattern or platform. 3. Use non-primary sources only as durable background, not as freshness authority.

    Start from data/sources.json and prefer official docs, standards, release notes, and lifecycle pages.Run a targeted web search for the specific architecture pattern or platform.Use non-primary sources only as durable background, not as freshness authority.
  3. 03

    Quick Reference

    Review the “Quick Reference” section in the pinned source before continuing.

    Review and apply the “Quick Reference” source section.
  4. 04

    When to Use This Skill

    Software shape inside a known solution: Turning a chosen solution shape into runtime boundaries, bounded contexts, and platform decisions

    Software shape inside a known solution: Turning a chosen solution shape into runtime boundaries, bounded contexts, and platform decisionsSystem decomposition: Deciding between monolith, modular monolith, microservicesArchitecture patterns: Event-driven, CQRS, layered, hexagonal, serverless
  5. 05

    When NOT to Use This Skill

    Use other skills instead for:

    Cross-system solution design (business flow, target state, integration landscape, phased transition across systems) → software-solution-architectureSingle-service implementation (routes, controllers, business logic) → software-backendAPI endpoint design (REST conventions, GraphQL schemas) → dev-api-design

Permission review

Static risk signals and limitations

Network access

medium · line 268

The documentation includes network, browsing, or remote request actions.

Use web search/web fetch to verify current external facts, versions, pricing, deadlines, regulations, or platform behavior before final answers.

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score93/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars82SourceRepository attention, not individual Skill quality
Compatibility2 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
vasilyu1983/AI-Agents-public
Skill path
frameworks/shared-skills/skills/software-architecture-design/SKILL.md
Commit
53f6cb73ea53a2646e3e7d4665062ad66f3683ac
License
MIT
Collected
2026-08-28
Default branch
main
View the original SKILL.md

Software Architecture Design

Use this skill for deep software and platform architecture decisions inside a known solution shape rather than implementation details within a single service or component.

If the question starts from a business workflow, system landscape, target state, or phased cross-system migration, use ../software-solution-architecture/SKILL.md first and come here for runtime, decomposition, and operability depth.

Treat estate modernization, platform engineering, and AI-native interoperability as optional deep dives. Do not load them unless the user is explicitly asking for those concerns.

Quick Reference

TaskPattern/ToolKey ResourcesWhen to Use
Choose architecture styleLayered, Microservices, Event-driven, Serverlessmodern-patterns.mdGreenfield projects, major refactors
Design for scaleLoad balancing, Caching, Sharding, Read replicasscalability-reliability-guide.mdHigh-traffic systems, performance goals
Ensure resilienceCircuit breakers, Retries, Bulkheads, Graceful degradationscalability-reliability-guide.mdDistributed systems, external dependencies
Document decisionsArchitecture Decision Record (ADR)adr-template.mdMajor technical decisions, tradeoff analysis
Define service boundariesDomain-Driven Design (DDD), Bounded contextsmicroservices-template.mdMicroservices decomposition
Model data consistencyACID vs BASE, Event sourcing, CQRS, Saga patternsdata-architecture-patterns.mdMulti-service transactions
Plan observabilitySLIs/SLOs/SLAs, Distributed tracing, Metrics, Logsarchitecture-blueprint.mdProduction readiness
Migrate from monolithStrangler fig, Database decomposition, Shadow trafficmigration-modernization-guide.mdLegacy modernization
Design inter-service commsAPI Gateway, Service mesh, BFF patternapi-gateway-service-mesh.mdMicroservices networking
Design delivery platformIDP, golden paths, fitness functionsarchitecture-trends.mdMulti-team platforms, governance
Rationalize service sprawlBounded-context platforms, repo-vs-runtime matrix, platform scorecardsestate-modernization.md20+ repos, too many services, uneven platform maturity
Plan estate modernizationPlatform-first migration waves, consolidation, compatibility boundariesestate-modernization-blueprint.mdPolyrepo estates, regulated migrations, legacy reduction
Design AI-native systemsRAG boundaries, tool gateways, agent interoperability, MCP, A2Aarchitecture-trends.mdLLM-powered products when architecture, not implementation, is the main question

When to Use This Skill

Invoke when working on:

  • Software shape inside a known solution: Turning a chosen solution shape into runtime boundaries, bounded contexts, and platform decisions
  • System decomposition: Deciding between monolith, modular monolith, microservices
  • Architecture patterns: Event-driven, CQRS, layered, hexagonal, serverless
  • Platform architecture: Internal developer platforms, golden paths, policy and delivery guardrails
  • Estate modernization: Too many repos, too many runtime units, polyrepo rationalization, platform-first operating models
  • Data architecture: Consistency models, sharding, replication, CQRS patterns
  • Scalability design: Load balancing, caching strategies, database scaling
  • Resilience patterns: Circuit breakers, retries, bulkheads, graceful degradation
  • API boundary design: Service-to-service contract posture, versioning strategy, and integration shape when the boundary decision is architectural
  • Architecture decisions: ADRs, tradeoff analysis, technology selection
  • Migration planning: Monolith decomposition, strangler fig, database separation
  • AI-native architecture: RAG boundaries, tool gateways, and interoperability protocols when the request is architecture-level rather than tool/server implementation

When NOT to Use This Skill

Use other skills instead for:

Boundary Rules

  • This skill owns runtime boundaries, deployable-unit decisions, data consistency tradeoffs, resilience internals, and platform defaults.
  • Start from the simplest architecture that satisfies the constraints; do not default to microservices, event sourcing, service mesh, or multi-agent splits without explicit evidence.
  • If the unresolved question is still "which systems participate, where is the system of record, or what is the target-state landscape?" route back to software-solution-architecture.
  • If the unresolved question is implementation of agent protocols, tool servers, or runtime-specific integrations, route to ai-agents or agents-mcp.

Decision Tree: Choosing Architecture Pattern

Primary question: [What kind of architecture problem is this?]
    ├─ Large estate with many repos/services and rising cognitive load?
    │   ├─ Runtime count is the main problem → Bounded-context platforms + selective consolidation
    │   ├─ Delivery inconsistency is the main problem → IDP + golden paths + scorecards
    │   └─ Both are true → Platform-first modernization, then consolidate low-value runtime units
    │
    ├─ Deterministic workflow, known steps?
    │   ├─ Single deployable acceptable → Modular Monolith
    │   ├─ Independent teams/capabilities required → Sequential or event-driven services
    │   └─ Burst-driven or edge-triggered workload → Serverless / event-driven
    │
    ├─ Adaptive workflow with tool use and reasoning?
    │   ├─ One agent can own the task → Single-agent system
    │   ├─ Specialized roles truly needed → Multi-agent with explicit stop conditions
    │   └─ High stakes / regulated workflow → Human-in-the-loop + audit trail
    │
    ├─ Strong consistency inside one domain boundary?
    │   ├─ Keep data and writes together → Monolith or Modular Monolith
    │   └─ Split only at stable bounded contexts → Microservices with owned data
    │
    └─ Need platform-level consistency across many teams?
        ├─ Repeated service creation / compliance needs → IDP + golden paths
        └─ Cross-agent or cross-vendor interoperability → MCP for tools/context, A2A for agent-to-agent

Decision Factors:

  • Default posture: prefer modular monolith over microservices unless independent deployment, ownership, and operability benefits are clear — see the explicit team-size/release-cadence/operational-maturity gates in modern-patterns.md § Modular Monolith vs. Microservices
  • Estate posture: optimize for fewer runtime units before fewer repos; repositories are collaboration units, runtimes are operational cost centers
  • Agent posture: prefer deterministic workflows or a single agent before introducing multi-agent coordination
  • Connectivity posture: prefer gateway plus application-library patterns until mTLS, traffic policy, or shared telemetry needs justify mesh complexity
  • Team structure (Conway's Law) — architecture mirrors org structure
  • Deployment independence needs
  • Consistency and failure-domain boundaries
  • Operational maturity (monitoring, orchestration)
  • Interoperability needs (protocols, contracts, external systems)

See references/modern-patterns.md for detailed pattern descriptions.

Output Guidelines

The references in this skill are background knowledge for you — absorb the patterns and present them as your own expertise. Do not cite internal reference file names (e.g., "from data-architecture-patterns.md") in user-facing output. Users don't know these files exist.

Every architecture recommendation must cover the following; skip elements only with explicit justification:

  • Simplest sufficient topology — state the least-complex architecture that still satisfies requirements
  • Concrete technology picks — name specific technologies (e.g., "Temporal.io for workflow orchestration", not just "an orchestrator")
  • Recommended option + rejected alternatives — what was considered, why alternatives lost
  • What NOT to build — explicitly defer or exclude premature scope
  • Team and process alignment — CODEOWNERS, deployment ownership, on-call boundaries
  • Repo and runtime model — for multi-repo estates, distinguish repo count from deployable count
  • Operability model — deployment topology, failure domains, rollback points, SLO ownership, incident boundaries
  • Migration path — sequencing, cutover strategy, reversibility (for refactors or new subsystems)
  • Key risks and failure modes — named breakpoints, how to detect early
  • Success metrics — measurable indicators: deploy frequency, lead time, error rates, MTTR

Workflow (System-Level)

Use this workflow when a user asks for architecture recommendations, decomposition, or major platform decisions.

  1. Clarify: problem statement, non-goals, constraints, and success metrics
  2. Capture quality attributes: availability, latency, throughput, durability, consistency, security, compliance, cost
  3. Decide workload shape: deterministic workflow, single-agent, or multi-agent; synchronous vs asynchronous
  4. Propose 2–3 candidate architectures and compare tradeoffs
  5. Default to the least-complex viable topology before justifying more distributed patterns
  6. For 20+ repo estates, classify each repo as runtime, adapter, library, channel, platform, tooling, or absorption candidate
  7. Define boundaries: bounded contexts, ownership, APIs/events, protocol contracts, interoperability needs
  8. Decide data strategy: storage, consistency model, schema evolution, migrations
  9. Design for operations: SLOs, failure modes, observability, deployment, DR, incident playbooks
  10. Design governance and safety: policy enforcement, auditability, evaluation gates, rollback controls
  11. Call out scope limits: what NOT to build yet, what to defer, what to buy vs build
  12. Document decisions: write ADRs for key tradeoffs and irreversible choices

Preferred deliverables (pick what fits the request):

  • Architecture blueprint: assets/planning/architecture-blueprint.md
  • Estate modernization blueprint: assets/planning/estate-modernization-blueprint.md
  • Decision record: assets/planning/adr-template.md
  • Pattern deep dives: references/modern-patterns.md, references/scalability-reliability-guide.md

ASCII Flow

Architecture design request
  -> Define quality attributes and system boundaries
  -> Map domain model, dependencies, and failure modes
  -> Choose architecture pattern and integration style
  -> Document rejected options and tradeoffs
  -> Define migration, observability, and verification checks
  -> Hand off implementable decisions and open risks

Known Traps

  • Choosing microservices because the estate already has many repos, even though runtime sprawl and weak ownership are the real issue.
  • Drawing a target-state diagram without a migration sequence, rollback boundary, or compatibility plan between old and new paths.
  • Splitting domains before ownership, on-call, and deploy authority are ready to support the additional surface area.
  • Introducing async and event-driven workflows on every boundary before deciding which paths actually need decoupling.
  • Calling something platform engineering while the golden path remains optional, inconsistent, or under-owned.

Common Anti-Patterns

  • Using deployable services as the default decomposition unit instead of bounded contexts, team ownership, and operational cost.
  • Copying hyperscaler or vendor reference architectures into teams that do not have equivalent scale, tooling, or platform staffing.
  • Designing for peak optional futures instead of the current throughput, failure, compliance, and change-management constraints.
  • Keeping every repo and runtime because each has "some value" despite obvious coordination and governance cost.
  • Conflating "modern" with "more distributed" and "AI-native" with "multi-agent by default."

Navigation

Core References

Read at most 2–3 references per question — pick the ones most relevant to the specific ask. Do not read all of them.

ReferenceContentsWhen to Read
modern-patterns.md11 architecture patterns with decision trees, incl. modular-monolith-vs-microservices gates and cell-based architectureChoosing or comparing patterns
scalability-reliability-guide.mdCAP theorem, DB scaling, caching, circuit breakers, SREScaling or reliability questions
data-architecture-patterns.mdCQRS variants, event sourcing, data mesh, sagas, consistencyData flow across services
migration-modernization-guide.mdStrangler fig, DB decomposition, feature flags, risk assessmentRefactoring a monolith
api-gateway-service-mesh.mdGateway patterns, service mesh, mTLS, observabilityInter-service communication
architecture-trends.mdPlatform engineering, ambient mesh, AI-native systems, MCP/A2ACurrent trends only
estate-modernization.mdRuntime-vs-repo rationalization, bounded-context platforms, consolidation heuristicsMulti-repo estates and service sprawl
operational-playbook.mdArchitecture questions framework, decomposition heuristicsDesign discussion framing

Templates

Planning & Documentation (assets/planning/):

Architecture Patterns (assets/patterns/):

Operations (assets/operations/):

Validation

  • evals/evals.json — trigger, non-trigger, and near-boundary behavioral checks for this skill

Applied-Recipe Toolkits

Related Skills

Freshness Protocol

When users ask version-sensitive questions about architecture patterns, platform engineering, or AI-native systems, verify current information before answering.

Trigger Conditions

  • "What's the best architecture for [use case]?"
  • "Microservices vs monolith — what's the current recommendation?"
  • "What's the latest in platform engineering / service mesh / AI architecture?"
  • "How do I modernize 50/100+ repos or reduce service sprawl?"
  • "Is [pattern] still recommended?"

How to Freshness-Check

  1. Start from data/sources.json and prefer official docs, standards, release notes, and lifecycle pages.
  2. Run a targeted web search for the specific architecture pattern or platform.
  3. Use non-primary sources only as durable background, not as freshness authority.

Load only when the question explicitly involves current trends, vendor-specific constraints, AI-native architecture, or "what's the latest thinking on X?"

  • references/architecture-trends.md — Platform engineering, ambient mesh, MCP/A2A interoperability, AI-native systems
  • references/estate-modernization.md — Estate rationalization, bounded-context platforms, platform-first migration posture
  • data/sources.json — curated resources organized by category:
    • platform_engineering_2026 — IDPs, software catalogs, and template-driven platform defaults
    • estate_modernization_2026 — strangler migration, anti-corruption layers, repo-vs-runtime guidance
    • optional_ai_architecture — MCP/A2A protocols and architecture-level AI interoperability references
    • modern_architecture_2026 — ambient mesh and other version-sensitive platform patterns

If live web access is available, consult 2–3 authoritative sources from data/sources.json and fold findings into the recommendation. If not, answer with durable patterns and explicitly state assumptions that could change (vendor limits, pricing, managed-service capabilities, or lifecycle status).

Fact-Checking

  • Known bugs, regressions, framework/compiler/runtime footguns, and version-specific crash or workaround guidance must be verified against current primary web sources before being treated as current fact.
  • Use web search/web fetch to verify current external facts, versions, pricing, deadlines, regulations, or platform behavior before final answers.
  • Prefer primary sources; report source links and dates for volatile information.
  • If web access is unavailable, state the limitation and mark guidance as unverified.

Learnings Loop

Before applying this skill on a non-trivial task, read learnings.consolidated.md in this directory (and learnings.md if present).

After applying it, if you encountered a pattern worth remembering, a mistake worth preventing, or a domain fact that surprised you, append one dated bullet to learnings.md via agents-skills-feedback-loop/scripts/append_learning.py. Do not modify SKILL.md itself.

Frequently asked questions

What to verify before installation and use

What does the software-architecture-design source document cover?

Use this skill for deep software and platform architecture decisions inside a known solution shape rather than implementation details within a single service or component.

How do I install software-architecture-design?

The source record exposes this install command: npx skills add https://github.com/vasilyu1983/AI-Agents-public --skill "frameworks/shared-skills/skills/software-architecture-design". Inspect the command and pinned source before running it.

Which Agent platforms does the source record declare?

The pinned source record declares support for: codex, claude code.

Which permission-related actions were detected?

Static rules flagged network in the source; the page lists the matching lines and excerpts.

Alternatives

Compare before choosing