system-design

Installation
SKILL.md

System Design

Define the high-level structure of a system: its components, their responsibilities, how they communicate, and where they run.

Context

System design translates requirements and domain knowledge into a technical blueprint. A well-designed architecture absorbs change gracefully -- poor design decisions compound over time and become exponentially expensive to reverse. Invest here before writing code. Every subsequent skill in the architecture and implementation phases depends on the decisions made here.

In spec-driven work, system design often starts from a reviewed spec package. In agile and brownfield work, it may start from a reviewed requirements document with open questions still visible. Do not silently "fix" requirement ambiguity inside the architecture. Preserve unresolved scope, compatibility, and quality-bound questions as design constraints or architectural open questions.

Inputs

  • requirements-doc -- Minimum required input. Functional and non-functional requirements with priority rankings, scope boundaries, and unresolved questions. Pay special attention to quality attributes (latency, throughput, availability, consistency) and brownfield coexistence constraints.
  • spec-doc -- Optional amplifying input when spec-driven or waterfall work produces a detailed specification.
  • domain-model -- Optional amplifying input when the problem has enough domain complexity that entity boundaries or ubiquitous language should shape component boundaries.

Process

Step 1: Identify Architectural Drivers

Related skills

More from yknothing/prodcraft

Installs
6
First Seen
Mar 27, 2026