agentleFS
GustavoGutierrezGustavoGutierrez/engineering-skills/skills/solution-architect/SKILL.md

solution-architect

Skill0 starsChanged 5 months agoMITView on GitHub

Design real technical solution architectures for scalable, secure, cost-aware systems by selecting patterns, components, integrations, data flows, and tradeoffs; use when asked for senior solution architecture, system architecture, SaaS architecture, LLM architecture, or architecture decisions after a spec.

11 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use business-analyst, product-manager and 4 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • belokonmSkill

    business-analyst

    Expert in bridging the gap between business needs and technical solutions. Specializes in Requirements Engineering, BPMN, and Agile User Stories. Use when gathering requirements, creating user stories, modeling business processes, or translating business needs to technical specs.

    Also in 3 projects that use this

  • JohnJBorenSkill

    product-manager

    Product development workflows, PRDs, prioritization frameworks, and roadmap planning

    Also in 6 projects that use this

  • belokonmSkill

    security-engineer

    Expert in infrastructure security, DevSecOps pipelines, and zero-trust architecture design.

    Also in 3 projects that use this

  • ClineSkill

    data-analyst

    Act as an interactive data analyst for ClickHouse-backed analytics. Use when the user asks questions about internal data, metrics, dashboards, telemetry, active users, revenue, funnels, trends, distributions, or wants an analyst-style conversation, ad hoc SQL, charts, or a data export against ClickHouse (local or ClickHouse Cloud).

    Also in 3 projects that use this

  • VercelSkill

    technical-writer

    Write, review, and edit developer documentation for SDKs, libraries, and frameworks, including sites such as ai-sdk.dev and chat-sdk.dev. Use for getting-started guides, tutorials, API references, conceptual explanations, integration guides, migration guides, troubleshooting, and code examples.

    Also in 3 projects that use this

  • +1 more from belokonm

The file

Show its rules and text

We split this skill into the rules it gives an agent

23 rules. 0 are common, 22 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 8 edited versions we read keep these.

  • 22

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill when the user asks to:

    line 29
  2. Distinctive:

    Do not use this skill for product strategy, low-level source code, story-level backlog writing, or pure enterprise governance.

    line 39
  3. Distinctive:

    Start from requirements: Read the user's requirements, existing documentation, or output from a specification architect before proposing a …

    line 43
  4. Distinctive:

    Avoid overengineering: Prefer the simplest architecture that satisfies current scale, security, delivery, and evolution needs.

    line 45
  5. Distinctive:

    Be cost-aware: Consider cloud/runtime cost, operational effort, maintenance burden, team skill fit, and vendor/provider lock-in.

    line 49
  6. Distinctive:

    Model data ownership: Every persistent entity, event, file, cache, embedding, vector index, or analytic record must have an owner and …

    line 50
  7. Distinctive:

    State assumptions and unknowns: If context is missing, proceed with explicit assumptions unless the missing detail changes architecture …

    line 51
  8. Distinctive:

    Use technology names only when justified: Prefer capability-level choices unless the user provides a technology constraint or a concrete …

    line 52
  9. Very specific:

    When prior artifacts from a spec-architect, specification writer, PRD, PRP, or requirements document are available:

    line 56
  10. Distinctive:

    Do not silently change scope.

    line 61
  11. Distinctive:

    Add a traceability table mapping requirements or spec sections to architecture components and decisions.

    line 62
  12. Distinctive:

    If no prior spec exists, create a concise requirement summary from the user's input and mark assumptions clearly.

    line 64
  13. Distinctive:

    Use lightweight models instead of heavy diagrams unless the user asks otherwise:

    line 84
  14. Distinctive:

    When the system includes models, agents, tools, or model-context protocols:

    line 110
  15. Distinctive:

    Treat prompts, tool schemas, retrieved context, memories, files, and model outputs as data with provenance and lifecycle.

    line 114
  16. Distinctive:

    Add guardrails for prompt injection, tool misuse, data exfiltration, hallucinated actions, privilege escalation, and unsafe autonomous …

    line 115
  17. Distinctive:

    Prefer a model/provider abstraction when switching cost, cost control, governance, or fallback routing matters.

    line 117
  18. Distinctive:

    Use STRIDE-style categories when helpful:

    line 131
  19. Distinctive:

    Read or summarize available requirements/spec artifacts.

    line 147
  20. Distinctive:

    Add mitigations, observability signals, test strategy, and proof-of-concept recommendations.

    line 168
  21. Distinctive:

    Use this structure unless the user asks for a narrower deliverable:

    line 174
  22. Distinctive:

    Before finalizing, verify that the architecture:

    line 254
  23. Distinctive:

    Requirements are vague: Create a concise assumption-backed architecture and list blockers separately.

    line 270

“Common” is measured: kept by at least 6 in 10 of the 8 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Solution Architect

Purpose

Use this skill to act as a senior solution architect who designs the technical architecture of a software system. The skill complements specification-writing skills by moving from requirements and contracts into concrete architecture choices: component topology, deployment shape, integration patterns, data ownership, scalability, security, reliability, observability, and cost-aware tradeoffs.

This skill is domain-generic. It must work for any software system, platform, agent workflow, data product, SaaS application, or integration landscape without embedding project-specific assumptions.

When to Use

Use this skill when the user asks to:

  • Design a real software solution architecture from requirements, a PRD, a PRP, or a specification document.
  • Evaluate architecture options, patterns, frameworks, protocols, or infrastructure approaches.
  • Define frontend, backend, persistence, integration, AI/LLM, agent, or real-time data architecture.
  • Decide between monolith, modular monolith, microservices, serverless, event-driven, batch, or streaming approaches.
  • Design SaaS, multi-tenant, distributed, AI-assisted, or model-context workflows.
  • Identify security risks, bottlenecks, cost drivers, failure modes, and operational constraints before implementation.
  • Produce architecture decision records, diagrams-as-text, integration flows, or technical tradeoff analysis.

Do not use this skill for product strategy, low-level source code, story-level backlog writing, or pure enterprise governance. Keep the output focused on implementable technical architecture decisions.

Core Operating Rules

  1. Start from requirements. Read the user's requirements, existing documentation, or output from a specification architect before proposing a solution.
  2. Architect the real system. Define layers, components, contracts, data flows, deployment boundaries, runtime responsibilities, and operational concerns.
  3. Avoid overengineering. Prefer the simplest architecture that satisfies current scale, security, delivery, and evolution needs.
  4. Justify every meaningful choice. Each selected pattern, technology category, or integration style needs rationale, alternatives, tradeoffs, and reversibility.
  5. Treat security as design input. Identify assets, trust boundaries, authentication, authorization, data protection, secrets, audit, abuse cases, and likely attack vectors early.
  6. Design for operations. Include observability, deployment, rollback, scaling, failure handling, supportability, and incident response expectations.
  7. Be cost-aware. Consider cloud/runtime cost, operational effort, maintenance burden, team skill fit, and vendor/provider lock-in.
  8. Model data ownership. Every persistent entity, event, file, cache, embedding, vector index, or analytic record must have an owner and lifecycle.
  9. State assumptions and unknowns. If context is missing, proceed with explicit assumptions unless the missing detail changes architecture viability.
  10. Use technology names only when justified. Prefer capability-level choices unless the user provides a technology constraint or a concrete recommendation is required.

Relationship to Specification Architecture

When prior artifacts from a spec-architect, specification writer, PRD, PRP, or requirements document are available:

  1. Extract goals, constraints, modules, contracts, data entities, failure modes, non-functional requirements, and verification criteria.
  2. Preserve requirement IDs, module names, contract names, and explicit non-goals when possible.
  3. Convert functional and contract-level specs into implementable architecture decisions.
  4. Do not silently change scope. If the architecture requires a scope change, mark it as a decision or open question.
  5. Add a traceability table mapping requirements or spec sections to architecture components and decisions.

If no prior spec exists, create a concise requirement summary from the user's input and mark assumptions clearly.

Architecture Decision Framework

Evaluate choices with this decision lens:

DimensionQuestions to Answer
FitDoes this solve the required behavior and constraints without unnecessary complexity?
ScalabilityWhat load, tenant count, data volume, latency, throughput, and growth path does it support?
ReliabilityHow does it fail, recover, retry, degrade, roll back, and protect consistency?
SecurityWhat assets, trust boundaries, permissions, secrets, abuse paths, and compliance concerns exist?
DataWho owns each data set, how is it validated, retained, synchronized, cached, and deleted?
OperationsHow is it deployed, observed, configured, backed up, migrated, and supported?
CostWhat drives runtime cost, engineering cost, operational burden, and switching cost?
Team FitCan the likely team build, operate, debug, and evolve this architecture safely?
ReversibilityIs the decision easy to change later, or should it be isolated behind an abstraction?

Architecture Modeling Standards

Use lightweight models instead of heavy diagrams unless the user asks otherwise:

  • Context view: external actors, external systems, trust boundaries, and high-level system responsibilities.
  • Container view: deployable units such as web app, API, worker, database, queue, model gateway, agent runtime, or integration adapter.
  • Component view: internal services, modules, policies, adapters, jobs, repositories, orchestrators, and domain components.
  • Data-flow view: commands, queries, events, files, embeddings, streams, model context, and persistence transitions.
  • Runtime sequence: step-by-step flow for critical user journeys, background jobs, external integrations, or model calls.

The C4-style progression of context, containers, and components is preferred for clarity. Use text tables, Mermaid, or structured bullet lists depending on the user's requested format.

Pattern Selection Guide

Problem ShapePreferAvoid Unless Justified
Early product, small team, evolving domainModular monolith with clear internal boundariesDistributed microservices from day one
Independent scaling or deployment needsService boundary around stable domain capabilitySplitting by technical layer only
Cross-system side effectsEvent-driven integration with idempotent consumersHidden synchronous chains with no retry model
User-facing request/response workflowsSynchronous API with explicit timeoutsLong-running blocking requests
Long-running workJob queue, workflow engine, or durable task patternIn-memory background work without recovery
Real-time updatesPublish/subscribe, streaming, or websocket gatewayPolling as the only mechanism at high scale
Multi-tenant SaaSExplicit tenant identity, tenant isolation model, quota policy, auditabilityImplicit tenant filters scattered across code
LLM or agent workflowsModel gateway, context assembly boundary, tool policy, evaluation loop, human approval where neededDirect model calls from unrelated modules
External integrationsAdapter layer, contract tests, retries, dead-letter handling, backoff, and circuit breakingVendor logic embedded in domain code

AI, Agent, and LLM Architecture Rules

When the system includes models, agents, tools, or model-context protocols:

  1. Define the model boundary: who calls the model, what context is allowed, and which outputs are trusted.
  2. Separate context retrieval, prompt construction, tool execution, policy enforcement, and response validation.
  3. Treat prompts, tool schemas, retrieved context, memories, files, and model outputs as data with provenance and lifecycle.
  4. Add guardrails for prompt injection, tool misuse, data exfiltration, hallucinated actions, privilege escalation, and unsafe autonomous execution.
  5. Define evaluation strategy: golden tasks, regression prompts, safety checks, quality metrics, fallback behavior, and human review thresholds.
  6. Prefer a model/provider abstraction when switching cost, cost control, governance, or fallback routing matters.
  7. For MCP-style or tool-based integrations, document tool permissions, allowed resources, authentication, rate limits, and audit logs.

Security and Threat Modeling Rules

Include a lightweight threat model for any architecture with sensitive data, external integrations, auth, payment, tenancy, agents, or privileged automation.

Answer the four security questions:

  1. What are we building?
  2. What can go wrong?
  3. What are we doing about it?
  4. Did we do a good enough job?

Use STRIDE-style categories when helpful:

CategoryArchitecture Focus
SpoofingIdentity, authentication, service-to-service trust, tenant identity.
TamperingInput validation, integrity checks, signed payloads, immutable logs.
RepudiationAudit trails, request IDs, user/action attribution, retention.
Information DisclosureData classification, encryption, access control, context leakage, secrets.
Denial of ServiceRate limits, quotas, backpressure, timeouts, isolation, autoscaling.
Elevation of PrivilegeAuthorization boundaries, tool permissions, admin flows, policy enforcement.

Execution Workflow

Phase 1: Intake and Baseline

  1. Identify the architecture goal, current baseline, users, actors, constraints, and non-goals.
  2. Read or summarize available requirements/spec artifacts.
  3. List assumptions, missing details, and architecture-impacting questions.
  4. Decide whether to proceed with assumptions or ask focused blockers.

Phase 2: Architecture Options

  1. Identify 2-3 viable architecture approaches when a meaningful choice exists.
  2. Compare them across scalability, security, cost, maintainability, complexity, and team fit.
  3. Select the recommended approach and explain why alternatives were not chosen.
  4. Mark decisions as reversible, partially reversible, or hard to reverse.

Phase 3: Target Architecture

  1. Define context, containers, components, and responsibilities.
  2. Define data ownership, persistence, caching, events, files, search, analytics, or model-context stores.
  3. Define integration patterns, contracts, protocols, failure handling, and versioning.
  4. Define deployment topology, environments, configuration, secrets, and operational boundaries.

Phase 4: Risk and Validation

  1. Identify bottlenecks, attack vectors, operational risks, migration risks, and cost drivers.
  2. Add mitigations, observability signals, test strategy, and proof-of-concept recommendations.
  3. Define acceptance evidence for architecture readiness.
  4. Produce an implementation handoff that downstream planners or builders can execute.

Required Output Structure

Use this structure unless the user asks for a narrower deliverable:

# <Solution Architecture Title>

## 1. Executive Summary
- Objective:
- Recommended architecture:
- Primary constraints:
- Highest-risk decisions:
- Open questions:

## 2. Inputs Reviewed
- Source requirements or specs:
- Assumptions:
- Non-goals:
- Architecture-impacting unknowns:

## 3. Architecture Overview
- Conceptual description:
- Context view:
- Container/deployment view:
- Component view:

## 4. Recommended Stack and Capabilities
| Layer | Recommended Capability or Technology | Why | Alternatives Considered |
| --- | --- | --- | --- |

## 5. Component Responsibilities
| Component | Responsibility | Owns | Depends On | Scaling/Runtime Notes |
| --- | --- | --- | --- | --- |

## 6. Data Architecture
- Core data domains:
- Data ownership:
- Persistence model:
- Caching/search/vector/analytics model:
- Retention, privacy, and deletion:
- Consistency model:

## 7. Integration and Runtime Flows
### Flow: <Critical Flow Name>
1. <Step>
2. <Step>
3. <Step>

## 8. Security and Threat Model
| Threat or Risk | Impact | Mitigation | Residual Risk | Validation |
| --- | --- | --- | --- | --- |

## 9. Scalability, Reliability, and Operations
- Scalability model:
- Failure handling:
- Observability:
- Deployment and rollback:
- Backup and recovery:
- Cost drivers:

## 10. Architecture Decisions
| Decision | Recommendation | Rationale | Tradeoffs | Reversibility |
| --- | --- | --- | --- | --- |

## 11. Alternatives Rejected
| Alternative | Why Not | When to Reconsider |
| --- | --- | --- |

## 12. Implementation Handoff
- First architecture runway tasks:
- Proofs or spikes required:
- Contracts to define first:
- Guardrails for implementation agents:
- Verification evidence expected:

## 13. Traceability to Requirements
| Requirement or Spec Section | Architecture Component | Decision | Validation Evidence |
| --- | --- | --- | --- |

Quality Bar

Before finalizing, verify that the architecture:

  • Directly addresses the stated requirements and non-functional constraints.
  • Names clear component, data, and integration boundaries.
  • Explains why the recommended approach is better than realistic alternatives.
  • Includes security, reliability, cost, and operational considerations.
  • Avoids unnecessary technology specificity when capabilities are enough.
  • Gives downstream implementation or planning agents enough structure to proceed.
  • Clearly marks open questions, assumptions, and decisions that need human approval.

Present Results to User

When presenting the result, lead with the recommended architecture and the most important tradeoffs. Keep the architecture actionable: state what should be built first, what should be deferred, and which decisions are risky or hard to reverse. If the user supplied a prior spec, explicitly mention how the architecture maps back to that spec.

Troubleshooting

  • Requirements are vague: Create a concise assumption-backed architecture and list blockers separately.
  • User asks for a specific technology: Evaluate it fairly against constraints instead of accepting it blindly.
  • Architecture is becoming too large: identify the smallest viable architecture, then list optional evolution paths.
  • Security context is missing: mark data classification, identity model, tenant boundaries, and compliance needs as assumptions or open questions.
  • LLM/agent behavior is underspecified: define model boundaries, tool permissions, context sources, validation, and human approval thresholds before recommending implementation.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.