design-code-architecture
Guided journey from an app idea to a deliberate architecture: boundaries, domain model, data decisions, and resilience, making only the expensive-to-reverse decisions and deferring the rest. Orchestrates eight skills phase by phase - clean-architecture, domain-driven-design, system-design, ddia-systems, software-design-philosophy, release-it, pragmatic-programmer, 37signals-way - asking the user questions at every decision point and recording results in the project docs/ folder (ARCHITECTURE.md, RELIABILITY.md, DESIGN-CODE-ARCHITECTURE-PLAN.md) so the journey resumes across sessions. Use when
npx skills add wondelai/skills --skill design-code-architecture --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Guides the agent through a phased, interactive process to design a new app's architecture. It focuses on expensive-to-reverse decisions first (boundaries, domain model, data decisions, resilience) and defers cheaper ones. It orchestrates eight skills in sequence, asking the user questions at each decision point and storing results in project docs (ARCHITECTURE.md, RELIABILITY.md, DESIGN-CODE-ARCHITECTURE-PLAN.md) so progress can resume later.
How it works
- Resumable journey across eight phases: clean-architecture, domain-driven-design, system-design, ddia-systems, software-design-philosophy, release-it, pragmatic-programmer, 37signals-way.
- Before each phase, it announces purpose, required decisions, produced artifact, and rough effort, offering Proceed / Skip / Defer. Phases marked GATE can be deferred, never skipped.
- Invokes the phase-specific skill by its slug (e.g.,
clean-architecture,domain-driven-design, etc.). If the skill is unavailable, it suggests installing withnpx skills add wondelai/skills/<slug> --global. - Records decisions in a tracker with a Decision Log and updates docs/ artifacts accordingly.
- Uses Intake questions to shape the Phase 1 boundaries and Phase 4 data decisions, among others, and adheres to an artifact discipline (uppercase docs files, initial skeletons, then updates).
When to use it
Use when designing a new application's architecture, selecting boundaries and a domain model before building, deciding monolith vs. microservices, or clarifying how to structure the app. If an existing codebase is involved, it can reference related skills like remove-technical-debt (aged) or improve-code-quality (fresh prototype). If the idea is not validated, it guides you to create-business or create-app first.
What it can touch
- Docs: creates and extends docs/ files (ARCHITECTURE.md, RELIABILITY.md, DESIGN-CODE-ARCHITECTURE-PLAN.md, plus phase-specific artifacts like docs/TESTING.md, docs/TECH-DEBT.md).
- Phases invoke dedicated skills by slug (e.g.,
clean-architecture,domain-driven-design,system-design,ddia-systems,software-design-philosophy,release-it,pragmatic-programmer,37signals-way).
Caveats
- The journey starts from a plan file; progress is saved in docs/ to resume sessions.
- Decisions are recorded in a Decision Log with date, decision, why, and alternatives rejected.
- The approach emphasizes expensive-to-reverse decisions and defers cheap ones; results depend on user responses during the phase prompts.
# Design Code Architecture Design the architecture for a new app: get the small number of expensive-to-reverse decisions right and stay aggressively simple everywhere else. This is an interactive, resumable journey of eight phases — the agent asks before every decision and records the outcome in your project's `docs/` folder, so you can stop after any phase and resume later. It runs from the most foundational and hardest-to-reverse (boundaries, domain) through the tunable (data, resilience) to the cross-cutting disciplines (complexity, reversibility, scope) you apply throughout. A weekend project uses three phases lightly; a funded team building toward launch wants the whole stack. ## Core Principle **Architecture is the set of decisions that are expensive to reverse: make exactly those deliberately, and defer everything cheap.** This skill sequences the phases, asks the decision questions, and records every choice in `docs/`. The constituent skills carry the method — invoke them rather than improvising their frameworks. The whole strategy is to convert expensive decisions into cheap ones by putting a boundary in front of them, so the irreducibly expensive set stays small enough to
- Core Principle
- Journey Map
- Operating Rules
- Intake
- Phases
- Phase 1 — Draw the boundaries (clean-architecture)
- Phase 2 — Model the domain (domain-driven-design)
- Phase 3 — Size the system honestly (system-design)
- Phase 4 — Make deliberate data decisions (ddia-systems)
- Phase 5 — Keep modules deep (software-design-philosophy)
- Phase 6 — Design for failure (release-it)
- Phase 7 — Prove the wiring and lock in habits (pragmatic-programmer)
- Phase 8 — Cut scope to the essential (37signals-way)
- Optional Phases
What does the design-code-architecture skill do?
Guided journey from an app idea to a deliberate architecture: boundaries, domain model, data decisions, and resilience, making only the expensive-to-reverse decisions and deferring the rest. Orchestrates eight skills phase by phase - clean-architecture, domain-driven-design, system-design, ddia-systems, software-design-philosophy, release-it, pragmatic-programmer, 37signals-way - asking the user questions at every decision point and recording results in the project docs/ folder (ARCHITECTURE.md, RELIABILITY.md, DESIGN-CODE-ARCHITECTURE-PLAN.md) so the journey resumes across sessions. Use when
How do I install it?
Run `npx skills add wondelai/skills --skill design-code-architecture --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From wondelai/skills, a repository with 1,835 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
