software-architecture

Guides writing of maintainable code using Clean Architecture and Domain-Driven Design.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/SUN-Underwriting/SunFlowCRM_DB --skill software-architecture-sun-underwriting
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: software-architecture
Source: https://github.com/SUN-Underwriting/SunFlowCRM_DB/tree/main/.agent/skills/software-architecture
Command: npx skills add https://github.com/SUN-Underwriting/SunFlowCRM_DB --skill software-architecture-sun-underwriting

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides a comprehensive guide to developing high-quality software by adhering to established architectural principles and best practices, reducing technical debt and improving long-term maintainability.

Core Features & Use Cases

  • Architectural Guidance: Offers principles based on Clean Architecture and Domain-Driven Design.
  • Code Quality Standards: Defines rules for code style, naming conventions, and separation of concerns.
  • Best Practices: Emphasizes a library-first approach and avoiding common anti-patterns.
  • Use Case: When designing a new feature, consult this Skill to ensure the implementation follows domain-specific naming, utilizes existing libraries where possible, and maintains clear separation between business logic and infrastructure.

Quick Start

Use the software-architecture skill to refactor the provided code snippet following early return patterns.

Frequently Asked Questions about software-architecture

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

FAQPage Schema
How do I design software architecture for high maintainability?▼

Clean architecture improves code quality by enforcing a clear separation of concerns and utilizing domain-specific naming conventions. It isolates business logic from infrastructure layers, which reduces technical debt and enhances long-term maintainability.

What's the best way to refactor code to avoid anti-patterns like NIH syndrome?▼

Avoid NIH syndrome and other anti-patterns by adopting a library-first approach that prioritizes utilizing existing libraries over writing custom code. Enforcing clear separation of concerns during refactoring also prevents redundant implementations and reduces technical debt.

When do I need Domain-Driven Design for my application?▼

Use Domain-Driven Design when developing complex software requiring high maintainability and scalable architecture. It provides architectural guidance through domain-specific naming rules and ensures business logic remains independent of infrastructure components.

How do I separate business logic from infrastructure using clean architecture?▼

Separate business logic from infrastructure by applying clean architecture principles that enforce clear separation of concerns. This structural guidance isolates your core domain logic, promotes a library-first approach, and significantly improves overall code quality.

Does this approach require specific frameworks to enforce code quality standards?▼

No specific frameworks are required to enforce these code quality standards. The guidance relies on foundational best practices like early return patterns and domain-specific naming conventions, which can be applied across any software engineering environment without dependencies.