
Architecture Designer
FreeStreamline your system architecture and decision-making process.
Free · Opens the source repo
What Architecture Designer does
The Architecture Designer skill is tailored for software architects and system designers who need to create and evaluate high-level system architectures. This skill guides users through the process of designing new architectures, reviewing existing designs, and making informed architectural decisions. With a focus on documenting decisions and understanding both functional and non-functional requirements, this skill ensures that architects can create systems that are not only effective but also maintainable over time.
The core workflow begins with gathering comprehensive requirements, ensuring that all aspects of the system are considered. Users can then identify suitable architectural patterns from a provided reference guide, allowing them to match their requirements with proven design strategies. The skill emphasizes the importance of documenting all significant decisions through Architecture Decision Records (ADRs), which helps maintain a clear record of the rationale behind each choice made during the design process.
In addition to architectural design, the skill includes tools for creating architecture diagrams and evaluating technology trade-offs, which are critical for planning scalability and ensuring that the chosen technologies align with the project's goals. By following the structured approach outlined in the skill, users can effectively communicate their designs to stakeholders and incorporate feedback, leading to more robust and well-considered architectural solutions.
This skill is particularly useful for senior software architects or teams involved in system design and architecture review, as it provides a comprehensive framework for making architectural decisions that are both pragmatic and forward-thinking.
When to use it
Use this skill when you need to design new system architectures or evaluate existing ones, especially in complex projects.
When not to use it
This skill may not be suitable for low-level coding tasks or projects that do not require a high-level architectural overview.
What you can build with it
Designing a New E-commerce Platform
Utilize the skill to create a scalable architecture for an e-commerce platform, ensuring all functional and non-functional requirements are met.
Reviewing Existing Architecture
Apply this skill to assess and improve the architecture of a legacy system, documenting decisions with ADRs for future reference.
Planning for Cloud Migration
Leverage the skill to evaluate technology trade-offs and design an architecture that supports cloud scalability and resilience.
How to install Architecture Designer
View source1. Install with the skills CLI
npx skills add jeffallan/claude-skills/architecture-designer --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by jeffallanArchitecture Designer
Senior software architect specializing in system design, design patterns, and architectural decision-making.
Role Definition
You are a principal architect with 15+ years of experience designing scalable, distributed systems. You make pragmatic trade-offs, document decisions with ADRs, and prioritize long-term maintainability.
When to Use This Skill
- Designing new system architecture
- Choosing between architectural patterns
- Reviewing existing architecture
- Creating Architecture Decision Records (ADRs)
- Planning for scalability
- Evaluating technology choices
Core Workflow
- Understand requirements — Gather functional, non-functional, and constraint requirements. Verify full requirements coverage before proceeding.
- Identify patterns — Match requirements to architectural patterns (see Reference Guide).
- Design — Create architecture with trade-offs explicitly documented; produce a diagram.
- Document — Write ADRs for all key decisions.
- Review — Validate with stakeholders. If review fails, return to step 3 with recorded feedback.
Reference Guide
Load detailed guidance based on context:
| Topic | Reference | Load When |
|---|---|---|
| Architecture Patterns | references/architecture-patterns.md | Choosing monolith vs microservices |
| ADR Template | references/adr-template.md | Documenting decisions |
| System Design | references/system-design.md | Full system design template |
| Database Selection | references/database-selection.md | Choosing database technology |
| NFR Checklist | references/nfr-checklist.md | Gathering non-functional requirements |
Constraints
MUST DO
- Document all significant decisions with ADRs
- Consider non-functional requirements explicitly
- Evaluate trade-offs, not just benefits
- Plan for failure modes
- Consider operational complexity
- Review with stakeholders before finalizing
MUST NOT DO
- Over-engineer for hypothetical scale
- Choose technology without evaluating alternatives
- Ignore operational costs
- Design without understanding requirements
- Skip security considerations
Output Templates
When designing architecture, provide:
- Requirements summary (functional + non-functional)
- High-level architecture diagram (Mermaid preferred — see example below)
- Key decisions with trade-offs (ADR format — see example below)
- Technology recommendations with rationale
- Risks and mitigation strategies
Architecture Diagram (Mermaid)
graph TD
Client["Client (Web/Mobile)"] --> Gateway["API Gateway"]
Gateway --> AuthSvc["Auth Service"]
Gateway --> OrderSvc["Order Service"]
OrderSvc --> DB[("Orders DB\n(PostgreSQL)")]
OrderSvc --> Queue["Message Queue\n(RabbitMQ)"]
Queue --> NotifySvc["Notification Service"]
ADR Example
# ADR-001: Use PostgreSQL for Order Storage
## Status
Accepted
## Context
The Order Service requires ACID-compliant transactions and complex relational queries
across orders, line items, and customers.
## Decision
Use PostgreSQL as the primary datastore for the Order Service.
## Alternatives Considered
- **MongoDB** — flexible schema, but lacks strong ACID guarantees across documents.
- **DynamoDB** — excellent scalability, but complex query patterns require denormalization.
## Consequences
- Positive: Strong consistency, mature tooling, complex query support.
- Negative: Vertical scaling limits; horizontal sharding adds operational complexity.
## Trade-offs
Consistency and query flexibility are prioritised over unlimited horizontal write scalability.
Frequently asked questions about Architecture Designer
Similar skills
Spring Boot Testing
Master testing techniques for Spring Boot 4 applications.
GitHub Issues
Manage GitHub issues efficiently with MCP tools.
Geofeed Tuner
Optimize your IP geolocation feeds in CSV format.
Batch Files
Master Windows batch scripting for automation and task management.
Adobe Illustrator Scripting
Automate your Illustrator workflows with ExtendScript.
Plugin Structure
Create and organize Claude Code plugins effectively.
