software-architecture

Applies Clean Architecture and Design-Driven principles to software development and code quality enforcement.

Updated Jan 19, 2026
One-click install
npx skills add https://github.com/v24kuon/KomaFull --skill software-architecture-v24kuon
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: software-architecture
Source: https://github.com/v24kuon/KomaFull/tree/main/.cursor/skills/software-architecture
Command: npx skills add https://github.com/v24kuon/KomaFull --skill software-architecture-v24kuon

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill addresses the common pitfalls of poor software design, such as tightly coupled code, lack of modularity, and the accumulation of technical debt, by enforcing clean architecture and domain-driven design principles.

Core Features & Use Cases

  • Architectural Guidance: Provides a structured approach to separating business logic from infrastructure and UI concerns.
  • Code Quality Enforcement: Offers clear rules for naming, modularization, and the use of the early return pattern to improve readability.
  • Use Case: When starting a new feature or refactoring a legacy module, use this skill to ensure the design adheres to clean architecture boundaries and avoids common anti-patterns like the NIH syndrome.

Quick Start

Use the software-architecture skill to review the proposed design for the new user authentication module and suggest improvements based on clean architecture principles.

Frequently Asked Questions about software-architecture

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

FAQPage Schema
How do I apply clean architecture principles when refactoring a legacy module?

To apply clean architecture when refactoring, separate business logic from infrastructure and UI concerns to enforce modularity. This approach ensures strict boundaries, reduces tightly coupled code, and systematically eliminates accumulated technical debt.

What is domain driven design used for in software design?

Domain driven design is used to structure complex software around core business logic. It establishes clear rules for modularity and separation of concerns, ensuring system maintainability and preventing common anti-patterns like tightly coupled code.

How do I enforce code quality standards across various programming environments?

Enforce code quality by applying strict naming rules, modularization, and early return patterns to improve readability. These standards apply broadly across programming environments to prevent technical debt and ensure maintainable software.

Does clean architecture work for library first development practices?

Clean architecture fully supports library first development practices by enforcing strict separation of concerns. It ensures business logic remains independent of infrastructure, allowing modular libraries to scale and maintain cleanly across systems.

When should I not use domain driven design for a new feature?

Avoid domain driven design for simple features lacking complex business logic, as its strict modularity and boundary enforcement introduce unnecessary overhead. It is best suited for scalable systems needing strict separation of concerns.

What is the best way to avoid the NIH syndrome during system design?

The best way to avoid the NIH syndrome is to enforce clean architecture boundaries and utilize library first development practices. This ensures modularity and leverages existing libraries instead of building unnecessary custom infrastructure.