software-architecture

Enforce Clean Architecture and Domain-Driven Design principles in software development.

2|Updated Feb 6, 2026
One-click install
npx skills add https://github.com/bcastelino/agent-skills-kit --skill software-architecture-bcastelino
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: software-architecture
Source: https://github.com/bcastelino/agent-skills-kit/tree/main/skills/software-architecture
Command: npx skills add https://github.com/bcastelino/agent-skills-kit --skill software-architecture-bcastelino

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides guidance and enforces best practices for writing high-quality, maintainable, and scalable software architecture, helping developers avoid common pitfalls and anti-patterns.

Core Features & Use Cases

  • Architectural Guidance: Adheres to Clean Architecture and Domain-Driven Design principles.
  • Code Quality Standards: Enforces rules for code style, naming conventions, and separation of concerns.
  • Anti-Pattern Avoidance: Identifies and discourages common anti-patterns like NIH syndrome and generic naming.
  • Use Case: When designing a new microservice, use this skill to ensure the architecture is robust, maintainable, and follows established design principles.

Quick Start

Apply software architecture best practices to the provided code.

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 and Domain Driven Design principles to a new microservice?

To apply Clean Architecture and Domain Driven Design, you enforce separation of concerns, proper naming conventions, and a library-first approach. This ensures your microservice architecture remains robust, maintainable, and scalable.

What is the best way to avoid NIH syndrome and other anti-patterns in software design?

The best way to avoid NIH syndrome and other anti-patterns in software design is by enforcing a library-first approach and adhering to strict code quality standards. This prevents redundant code creation and maintains architectural integrity.

How do I enforce code style and separation of concerns during software development?

You enforce code style and separation of concerns by applying architectural best practices that dictate strict naming conventions and structural boundaries. This guides developers in writing maintainable, high-quality software.

Can I use these software design principles for legacy code refactoring?

These software design principles focus on establishing quality-focused architecture for development. While beneficial for establishing standards, the metadata specifically highlights guiding new microservice design rather than legacy refactoring.

Why does generic naming affect software architecture and code quality?

Generic naming negatively affects software architecture because it obscures intent and breaks Domain Driven Design principles. Enforcing proper naming conventions ensures code clarity and maintains structural integrity.

Do I need specific frameworks to implement proper error handling in software design?

You do not need specific external frameworks to implement proper error handling in software design. The focus is on adhering to architectural principles and avoiding anti-patterns to enforce robust error management.