architecture

Design software systems using Clean Architecture principles and dependency rules.

5|Updated Jan 31, 2026
One-click install
npx skills add https://github.com/onesyntax/skills --skill architecture-onesyntax
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: architecture
Source: https://github.com/onesyntax/skills/tree/main/skills/architecture
Command: npx skills add https://github.com/onesyntax/skills --skill architecture-onesyntax

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides a practical framework for designing software systems using Clean Architecture principles, helping teams separate concerns and manage dependencies.

Core Features & Use Cases

  • Structured boundaries: defines entities, use cases, interface adapters, and frameworks/drivers to organize code according to layers.
  • Boundary crossing rules: ensures data crossing boundaries are simple data structures, never entities or database rows.
  • Dependency direction & SOLID foundations: guides applying the Dependency Rule and SOLID principles to keep architecture maintainable.
  • Use-case driven design: supports planning feature design, module boundaries, and architectural reviews across teams.

Quick Start

Follow the Architecture Workflow when designing a new feature or reviewing architecture decisions. Identify layers, apply the dependency rule, define use cases and boundary data structures, and ensure boundaries are expressed via interfaces.

Frequently Asked Questions about architecture

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I design maintainable software using clean architecture principles?

Clean architecture separates concerns by structuring software into layers: entities, use cases, interface adapters, and frameworks. You define boundaries, apply the dependency rule, and ensure data crossing boundaries are simple DTOs to maintain system maintainability.

What is the dependency rule in clean architecture and how does it work?

The dependency rule in clean architecture dictates that dependencies must point inward toward higher-level policies. Source code dependencies must only point inward toward entities, ensuring inner layers remain isolated from frameworks and delivery mechanisms.

How do I define boundaries and use cases for a new software feature?

To define boundaries and use cases, identify architectural layers, map feature requirements to use cases, and express boundaries via interfaces. Data crossing boundaries must be simple DTOs, never entities or database rows, keeping interactors and presenters decoupled.

Can I use clean architecture for architectural reviews and module boundary planning?

Yes, clean architecture supports planning feature design, module boundaries, and architectural reviews across teams. It guides teams through applying SOLID principles and the dependency rule to verify that entities remain isolated from frameworks during reviews.

What data structure should cross boundaries in a clean architecture design?

Data crossing boundaries in clean architecture must be simple data structures or DTOs. They must never be entities or database rows, ensuring that interactors and presenters remain decoupled from framework and delivery mechanisms.

When should I not use clean architecture for software design?

Avoid clean architecture when the overhead of defining interactors, presenters, and boundary DTOs outweighs the need for maintainability. If a feature does not require strict separation of concerns or long-term dependency management, simpler designs may be better.