Skill

scope-appropriate-architecture

Install
1
Install the plugin
$
npx claudepluginhub yonatangross/orchestkit --plugin ork

Want just this skill?

Add to a custom plugin, then install with one command.

Description

Right-sizes architecture to project scope. Prevents over-engineering by classifying projects into 6 tiers and constraining pattern choices accordingly. Use when designing architecture, selecting patterns, or when brainstorm/implement detect a project tier.

Tool Access

This skill is limited to using the following tools:

ReadGlobGrepWebFetchWebSearch
Supporting Assets
View in Repository
references/enterprise.md
references/interview-takehome.md
references/open-source.md
references/startup-mvp.md
rules/_sections.md
rules/over-engineering-flag.md
rules/tier-detection-evidence.md
test-cases.json
Skill Content

Scope-Appropriate Architecture

Right-size every architectural decision to the project's actual needs. Not every project needs hexagonal architecture, CQRS, or microservices.

Core principle: Detect the project tier first, then constrain all downstream pattern choices to that tier's complexity ceiling.


The 6 Project Tiers

TierLOC RatioArchitectureDBAuthTests
1. Interview/Take-home1.0-1.3xFlat files, no layersSQLite / JSONNone or basic8-15 focused
2. Hackathon/Prototype0.8-1.0xSingle file if possibleSQLite / in-memoryNoneZero
3. Startup/MVP1.0-1.5xMVC monolithManaged PostgresClerk/Supabase AuthHappy path + critical
4. Growth-stage1.5-2.0xModular monolithPostgres + RedisAuth serviceUnit + integration
5. Enterprise2.0-3.0xHexagonal/DDDPostgres + queuesOAuth2/SAMLFull pyramid
6. Open Source1.2-1.8xMinimal API surfaceConfigurableOptionalExhaustive public API

LOC Ratio = total lines / core business logic lines. Higher ratio = more infrastructure code relative to business value.


Auto-Detection Signals

SignalTier Indicator
README contains "take-home", "assignment", "interview"Tier 1
Time limit mentioned (e.g., "4 hours", "weekend")Tier 1-2
< 10 files, no CI, no DockerTier 1-2
.github/workflows/ presentTier 3+
package.json with 20+ dependenciesTier 3+
Kubernetes/Terraform files presentTier 4-5
CONTRIBUTING.md, CODE_OF_CONDUCT.mdTier 6
Monorepo with packages/ or apps/Tier 4-5

When confidence is low: Ask the user with AskUserQuestion.


Pattern Appropriateness Matrix

PatternInterviewHackathonMVPGrowthEnterprise
Repository patternOVERKILLOVERKILLBORDERLINEAPPROPRIATEREQUIRED
Event-driven archOVERKILLOVERKILLOVERKILLSELECTIVEAPPROPRIATE
DI containersOVERKILLOVERKILLLIGHT ONLYAPPROPRIATEREQUIRED
Separate DTO layersOVERKILLOVERKILL1 EXTRA2 LAYERSALL LAYERS
MicroservicesNEVERNEVERNEVEREXTRACT ONLYAPPROPRIATE
CQRSOVERKILLOVERKILLOVERKILLOVERKILLWHEN JUSTIFIED
Hexagonal architectureOVERKILLOVERKILLOVERKILLBORDERLINEAPPROPRIATE
DDD (bounded contexts)OVERKILLOVERKILLOVERKILLSELECTIVEAPPROPRIATE
Message queuesOVERKILLOVERKILLBORDERLINEAPPROPRIATEREQUIRED
API versioningSKIPSKIPURL prefixHeader-basedFull strategy
Error handlingtry/catchconsole.logError boundaryError serviceRFC 9457
Loggingconsole.lognoneStructured JSONCentralizedOpenTelemetry

Rule of thumb: If a pattern shows OVERKILL for the detected tier, do NOT use it. Suggest the simpler alternative instead.


Technology Quick-Reference by Tier

ChoiceInterviewHackathonMVPGrowthEnterprise
DatabaseSQLite / JSON fileIn-memory / SQLiteManaged PostgresPostgres + RedisPostgres + queues + cache
AuthHardcoded / noneNoneClerk / Supabase AuthAuth serviceOAuth2 / SAML / SSO
State mgmtuseStateuseStateZustand / ContextZustand + React QueryRedux / custom + cache
CSSInline / TailwindTailwindTailwindTailwind + design tokensDesign system
APIExpress routesSingle file handlerNext.js API routesFastAPI / ExpressGateway + services
DeploymentlocalhostVercel / RailwayVercel / RailwayDocker + managedK8s / ECS
CI/CDNoneNoneGitHub Actions basicMulti-stage pipelineFull pipeline + gates
MonitoringNoneNoneError tracking onlyAPM + logsFull observability stack

Build vs Buy Decision Tree (Tiers 1-3)

For Interview, Hackathon, and MVP tiers, always prefer buying over building:

CapabilityBUY (use SaaS)BUILD (only if)
AuthClerk, Supabase Auth, Auth0Core product IS auth
PaymentsStripeCore product IS payments
EmailResend, SendGridCore product IS email
File storageS3, Cloudflare R2Compliance requires on-prem
SearchAlgolia, Typesense Cloud> 10M docs or custom ranking
AnalyticsPostHog, MixpanelUnique data requirements

Time savings: Auth alone is 2-4 weeks build vs 2 hours integrate.


Upgrade Path

When a project grows beyond its current tier, upgrade incrementally:

Tier 2 (Prototype) → Tier 3 (MVP)
  Add: Postgres, basic auth, error boundaries, CI

Tier 3 (MVP) → Tier 4 (Growth)
  Add: Redis cache, background jobs, monitoring, module boundaries

Tier 4 (Growth) → Tier 5 (Enterprise)
  Add: DI, bounded contexts, message queues, full observability
  Extract: First microservice (only the proven bottleneck)

Key insight: You can always add complexity later. You cannot easily remove it.


When This Skill Activates

This skill is loaded by:

  • brainstorm Phase 0 (context discovery)
  • implement Step 0 (context discovery)
  • quality-gates YAGNI check
  • Any skill that needs to right-size a recommendation

The detected tier is passed as context to constrain downstream decisions.


Related Skills

  • ork:brainstorm - Uses tier detection in Phase 0 to constrain ideas
  • ork:implement - Uses tier detection in Step 0 to constrain architecture
  • ork:quality-gates - YAGNI gate references this skill's tier matrix
  • ork:architecture-patterns - Architecture validation (constrained by tier)

References

Load on demand with Read("${CLAUDE_SKILL_DIR}/references/<file>"):

FileContent
interview-takehome.mdTiers 1-2 in detail
startup-mvp.mdTier 3 patterns and decisions
enterprise.mdTiers 4-5 patterns and justification criteria
open-source.mdTier 6 unique considerations
Stats
Stars128
Forks14
Last CommitMar 20, 2026
Actions

Similar Skills