tmcfarlane/oh-my-cursor/architect

Claude Code and agent skill by tmcfarlane/oh-my-cursor

Trust tier 2
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Design system architecture and high-level technical strategy

Install

npx vskill@latest install tmcfarlane/oh-my-cursor/architect

SKILL.md

Architecture Design

Design system architecture and make strategic technical decisions.

Core Principle

Good architecture enables change while maintaining simplicity.

Name

han-core:architect - Design system architecture and high-level technical strategy

Synopsis

/architect [arguments]

Architecture vs Planning

Architecture Design (this skill):

  • Strategic: "How should the system be structured?"
  • Component interactions and boundaries
  • Technology and pattern choices
  • Long-term implications
  • System-level decisions

Technical Planning:

  • Tactical: "How do I implement feature X?"
  • Specific implementation tasks
  • Execution details
  • Short-term focus

Use /architect when:

  • Designing new systems or subsystems
  • Significant system change (new subsystem, major refactor)
  • Affects multiple components or teams
  • Major refactors affecting multiple components
  • Technology selection decisions
  • Defining system boundaries and interfaces
  • Long-term technical strategy needed
  • Need to evaluate multiple approaches
  • Decisions have broad impact

Use /plan when:

  • Implementing within existing architecture
  • Implementing specific feature within existing architecture
  • Tactical execution planning
  • Breaking down known work
  • Architecture is already decided
  • Task sequencing and execution

Architecture Process

1. Understand Context

Business context:

  • What problem are we solving?
  • Who are the users?
  • What are the business goals?
  • What are the success metrics?

Technical context:

  • What exists today?
  • What constraints exist?
  • What must we integrate with?
  • What scale must we support?

Team context:

  • What's our expertise?
  • What can we maintain?
  • What's our velocity?
2. Gather Requirements

Functional requirements:

  • What must the system do?
  • What are the features?
  • What are the user scenarios?

Non-functional requirements:

  • Performance: Response time, throughput
  • Scalability: Expected load, growth
  • Availability: Uptime requirements
  • Security: Compliance, data protection
  • Maintainability: Team size, skills
  • Cost: Budget constraints

Example:

markdown
## Requirements
### Functional
-Users can search products by name/category
-Users can add items to cart
-Users can checkout and pay
### Non-Functional
-Search response time < 200ms (p95)
-Support 10,000 concurrent users
-99.9% uptime
-PCI DSS compliant for payments
-Team of 5 developers can maintain
3. Identify Constraints

Technical constraints:

  • Must use existing authentication system
  • Must integrate with legacy inventory system
  • Database must be PostgreSQL (existing infrastructure)

Business constraints:

  • Budget for infrastructure
  • Must support EU data residency

Team constraints:

  • Team experienced in Python, less in Go
  • No DevOps specialist on team
  • Remote team across timezones
4. Consider Alternatives

Never design in a vacuum - consider options:

Example: Data storage choice

Option 1: PostgreSQL

  • Pros: Team knows it, ACID guarantees, rich query support
  • Cons: Vertical scaling limits, setup complexity

Option 2: MongoDB

  • Pros: Flexible schema, horizontal scaling
  • Cons: Team unfamiliar, eventual consistency

Option 3: DynamoDB

  • Pros: Fully managed, auto-scaling
  • Cons: Vendor lock-in, query limitations, cost at scale

Decision: PostgreSQL

  • Team expertise outweighs scaling concerns
  • Can re-evaluate if scale becomes issue
  • Faster initial development
5. Design System Structure

Define components and their responsibilities:

┌─────────────────────────────────────────────┐
│ Client Apps │
│ (Web, iOS, Android) │
└────────────────┬────────────────────────────┘
│
▼
┌─────────────────────────────────────────────┐
│ API Gateway / Load Balancer │
└────────────────┬────────────────────────────┘
│
┌────────┴────────┐
▼ ▼
┌───────────────┐ ┌───────────────┐
│ Auth │ │ Core API │
│ Service │ │ Service │
└───────┬───────┘ └───────┬───────┘
│ │
│ ┌────────┴────────┐
│ ▼ ▼
│ ┌──────────────┐ ┌──────────────┐
│ │ PostgreSQL │ │ Redis │
│ │ (Primary) │ │ (Cache) │
│ └──────────────┘ └──────────────┘
│
▼
┌───────────────┐
│ User DB │
└───────────────┘

Component descriptions:

markdown
## Components
### API Gateway
**Responsibility:** Route requests, rate limiting, authentication
**Technology:** Nginx
**Dependencies:** Auth Service, Core API Service
**Scale:** 2-3 instances behind load balancer
### Auth Service
**Responsibility:** User authentication, session management, JWT issuing
**Technology:** Python (Flask), PostgreSQL
**API:** REST
**Scale:** Stateless, 2-N instances
### Core API Service
**Responsibility:** Business logic, data access, external integrations
**Technology:** Python (FastAPI), PostgreSQL, Redis
**API:** REST
**Scale:** Stateless, 2-N instances
### PostgreSQL
**Responsibility:** Primary data store
**Scale:** Primary with read replica
### Redis
**Responsibility:** Session storage, caching, rate limiting
**Scale:** Cluster mode (3 nodes)
6. Define Interfaces

API contracts:

markdown
## API Design
### POST /api/auth/login
**Purpose:** Authenticate user, issue JWT
**Request:**

{ "email": "user@example.com", "password": "secure_password" }

**Response (200):**

{ "token": "eyJ...", "user": { "id": "123", "email": "user@example.com", "name": "John Doe" } }

**Errors:**
- 400: Invalid request
- 401: Invalid credentials
- 429: Rate limit exceeded
7. Plan for Failure

What can go wrong?

  • Database unavailable
  • External API down
  • Network partition
  • High load
  • Data corruption

Mitigation strategies:

  • Retry with exponential backoff
  • Circuit breakers for external services
  • Graceful degradation
  • Health checks and monitoring
  • Database backups

Example:

markdown
## Failure Scenarios
### Database Unavailable
**Impact:** Cannot read/write data
**Mitigation:**
-Read replica failover (automated)
-Circuit breaker after 3 failures
-Cache serves stale data for 5 minutes
-User sees degraded experience message
**Recovery:** Manual failover to replica, fix primary
### External Payment API Down
**Impact:** Cannot process payments
**Mitigation:**
-Retry 3 times with exponential backoff
-Queue payments for later processing
-User notified of delay
-Alert on-call engineer
**Recovery:** Process queued payments once API recovers
8. Document Decisions

Architecture Decision Record (ADR):

markdown
# ADR-001: Use PostgreSQL for Primary Database
**Status:** Accepted
**Date:** 2024-01-15
**Deciders:** Tech Lead, Backend Team
## Context
We need to choose a primary database for user data, products, and orders.
Requirements:
-Strong consistency (ACID)
-Complex queries (joins, aggregations)
-< 200ms query time for 90% of queries
-Support 100k users initially
## Decision
Use PostgreSQL as primary database.
## Alternatives Considered
### MongoDB
-**Pros:** Flexible schema, horizontal scaling
-**Cons:** Team unfamiliar, eventual consistency issues
-**Why not:** Team expertise more valuable than flexibility
### DynamoDB
-**Pros:** Managed service, auto-scaling
-**Cons:** Vendor lock-in, limited query capability, cost
-**Why not:** Query limitations would hurt development velocity
### MySQL
-**Pros:** Similar to PostgreSQL, team knows it
-**Cons:** Less feature-rich than PostgreSQL
-**Why not:** PostgreSQL offers JSON support, better full-text search
## Consequences
**Positive:**
-Team can be productive immediately
-Strong consistency guarantees
-Rich query capabilities
-JSON support for flexible data
**Negative:**
-Vertical scaling limits (mitigated: can add read replicas)
-More complex than managed services (mitigated: use RDS)
-Higher operational overhead
**Trade-offs:**
-Chose familiarity over horizontal scaling
-Chose rich queries over eventual consistency
-Can re-evaluate if scale requirements change
## Validation
-Team confirmed expertise in PostgreSQL
-Load testing shows meets performance requirements
-Cost analysis shows acceptable for first year

Architecture Document Structure

markdown
# Architecture Design: [System/Feature Name]
## Context
### Problem Statement
[What business problem are we solving?]
### Goals
[What are we trying to achieve?]
### Non-Goals
[What are we explicitly NOT trying to achieve?]
### Requirements
**Functional:**
-[Requirement 1]
-[Requirement 2]
**Non-Functional:**
-Performance: [e.g., < 200ms response time]
-Scalability: [e.g., handle 10k concurrent users]
-Security: [e.g., PCI compliance]
-Maintainability: [e.g., easy to modify]
### Constraints
[Technical, time, resource, or business constraints]
## Current Architecture
[What exists today? What needs to change?]
## Proposed Architecture
### High-Level Design
[Diagram or description of system components]

┌─────────────┐ ┌─────────────┐ ┌──────────────┐ │ Client │────▶│ API │────▶│ Database │ └─────────────┘ └─────────────┘ └──────────────┘ │ ▼ ┌─────────────┐ │ Cache │ └─────────────┘

### Components
#### Component A
**Responsibility:** [What it does]
**Interface:** [How others interact with it]
**Dependencies:** [What it depends on]
**Technology:** [Implementation stack]
#### Component B
[Similar structure...]
### Data Flow
[How data moves through the system]
### API Design
[Key endpoints, schemas, contracts]
### Data Model
[Database schema, key entities]
### Security Model
[Authentication, authorization, data protection]
## Alternative Approaches Considered
### Alternative 1: [Approach name]
**Pros:**
- [Advantage 1]
- [Advantage 2]
**Cons:**
- [Disadvantage 1]
- [Disadvantage 2]
**Why not chosen:** [Reasoning]
### Alternative 2: [Another approach]
[Similar structure...]
## Decision Rationale
### Why This Architecture?
[Explain the key decisions and trade-offs]
### Trade-offs Accepted
[What we gave up for what benefits]
### Assumptions
[What we're assuming to be true]
## Implementation Strategy
### Phase 1: [Foundation]
[What to build first]
### Phase 2: [Core Features]
[Next phase]
### Phase 3: [Enhancement]
[Final phase]
### Migration Strategy
[If replacing existing system, how to transition?]
## Risks & Mitigation
| Risk | Impact | Probability | Mitigation |
|------|--------|-------------|------------|
| [Risk 1] | High | Medium | [How to mitigate] |
| [Risk 2] | Medium | Low | [How to mitigate] |
## Testing Strategy
[How will we validate this architecture?]
## Monitoring & Observability
[How will we know if it's working?]
## Success Metrics
[How will we measure success?]
## Open Questions
[What still needs to be resolved?]
## References
[Links to research, related docs, RFCs]

Architecture Principles

1. Simplicity

Start simple, add complexity only when needed.

BAD: Microservices from day 1 with 20 services
GOOD: Start with monolith, split when needed

Apply YAGNI: You Aren't Gonna Need It

  • Don't build for hypothetical future
  • Add when actually needed
  • Simpler is easier to maintain
2. Separation of Concerns

Each component has one clear responsibility.

GOOD:
- Auth Service: Authentication only
- User Service: User profile management
- Order Service: Order processing
BAD:
- God Service: Does everything

Apply SOLID principles:

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
109
Repository forks
14
7-day trend score
24

Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 19 Mar 2026, 7 months ago.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/tmcfarlane/oh-my-cursor/architect/badge)](https://verified-skill.com/skills/tmcfarlane/oh-my-cursor/architect)

Something wrong with this skill or its page? Tell us.