ClaudeCodeMod

All shelves / Marketplaces

nathankim0/clean-architecture-skills

nathankim0/clean-architecture-skills · 2 plugins

Marketplace Claude Code skill for reviewing and designing code based on Clean Architecture principles (Dependency Rule, Layer Structure, SOLID)

Install

In Claude Code
/plugin marketplace add nathankim0/clean-architecture-skills

Run inside Claude Code, then install plugins from it. Check the repo's README before you run it.

Open the repo

Plugins 2

After adding the marketplace, install one with /plugin install <name>@clean-architecture-skills.

  1. 1clean-architecture클린 아키텍처 원칙에 따라 코드를 리뷰하고 설계 가이드를 제공합니다. 의존성 규칙, SOLID 원칙, 레이어 분리를 검토합니다./plugin install clean-architecture@clean-architecture-skillsv1.0.0
  2. 2kent-beck-style켄트 벡의 리팩토링 철학과 단순 설계 원칙에 따라 코드를 리뷰하고 가이드를 제공합니다. 코드 냄새 감지, 리팩토링 기법, 점진적 개선을 다룹니다./plugin install kent-beck-style@clean-architecture-skillsv1.0.0

Files

README.md
Clean Architecture Skills

Clean Architecture Skills

A collection of skills for AI coding agents that provide code review, architecture guidance, and refactoring suggestions based on Clean Architecture and Kent Beck's simple design philosophy.

Designed primarily for Claude Code, with support for other AI coding assistants that use local skill directories.

What's Included

Clean Architecture

Reviews and guides code using Robert C. Martin's Clean Architecture principles.

  • Dependency Rule — Detect dependencies that point in the wrong direction
  • Layer Boundaries — Review Entities, Use Cases, Interface Adapters, and Infrastructure
  • Dependency Inversion — Guide communication across architectural boundaries
  • SOLID Principles — Review SRP, OCP, LSP, ISP, and DIP
  • Architecture Design — Help design new features without coupling business rules to frameworks

Kent Beck Style

Reviews code using Kent Beck's refactoring philosophy and simple design principles.

  • Code Smells — Detect structural and readability problems
  • Refactoring — Suggest small, behavior-preserving improvements
  • Simple Design — Apply YAGNI, KISS, and the 4 Rules of Simple Design
  • Intention-Revealing Code — Improve naming and make code easier to understand
  • Incremental Improvement — Prefer small, safe changes over large rewrites

Installation

Claude Code

Add this repository as a plugin marketplace:

/plugin marketplace add nathankim0/clean-architecture-skills

Then install the skills you want.

Clean Architecture

/plugin install clean-architecture@clean-architecture-skills

Kent Beck Style

/plugin install kent-beck-style@clean-architecture-skills

You can install either skill independently or use both together.

Manual Installation

Clone the repository:

git clone https://github.com/nathankim0/clean-architecture-skills.git

Then copy the desired skill into the skill directory used by your AI coding assistant.

Other AI Assistants

Assistant Skill Directory
Cursor .cursor/skills/
Gemini CLI ~/.gemini/skills/
OpenCode ~/.opencode/skills/

Usage

The skills are designed to work naturally from regular prompts.

Review an Entire Project

Review this project using clean architecture principles.

Review a Specific Module

Check the dependencies in src/domain and identify any clean architecture violations.

Design a New Feature

Design user authentication using clean architecture.

Review Code Smells

Review this code for code smells and suggest refactorings.

Refactor Existing Code

Help me refactor this long method using Kent Beck's approach.

Review for Simplicity

Check whether this implementation follows YAGNI and KISS.

Improve Naming

Improve the naming and readability of this module.

Use Both Skills Together

Review this feature for clean architecture violations, then suggest small refactorings to simplify the implementation.

Clean Architecture

The Dependency Rule

The central rule of Clean Architecture is:

Source code dependencies must point inward, toward higher-level policies.

┌─────────────────────────────────────────────────────────┐
│                  Frameworks & Drivers                   │
│                                                         │
│  ┌─────────────────────────────────────────────────┐    │
│  │              Interface Adapters                 │    │
│  │                                                 │    │
│  │  ┌─────────────────────────────────────────┐    │    │
│  │  │                Use Cases                │    │    │
│  │  │                                         │    │    │
│  │  │  ┌─────────────────────────────────┐    │    │    │
│  │  │  │            Entities             │    │    │    │
│  │  │  │                                 │    │    │    │
│  │  │  │   Enterprise Business Rules     │    │    │    │
│  │  │  └─────────────────────────────────┘    │    │    │
│  │  └─────────────────────────────────────────┘    │    │
│  └─────────────────────────────────────────────────┘    │
└─────────────────────────────────────────────────────────┘

                     Dependencies flow inward →

Business rules should not depend on databases, frameworks, UI libraries, or external APIs.

Instead, implementation details depend on abstractions defined closer to the business rules.

Layer Responsibilities

Layer Responsibility Examples
Entities Enterprise business rules User, Order, Product
Use Cases Application-specific business rules CreateOrder, GetUserProfile
Interface Adapters Transform data between layers Controllers, Presenters, Gateways
Frameworks & Drivers External implementation details React, Express, PostgreSQL

SOLID Principles

Principle Description
SRP — Single Responsibility A module should have one reason to change
OCP — Open/Closed Open for extension, closed for modification
LSP — Liskov Substitution Subtypes must be substitutable for their base types
ISP — Interface Segregation Don't depend on interfaces you don't use
DIP — Dependency Inversion Depend on abstractions, not concrete implementations

Kent Beck Style

The Kent Beck skill focuses less on introducing architecture and more on making existing code simpler, clearer, and easier to change.

Simple Design

Prefer code that:

  1. Passes the tests
  2. Reveals intention
  3. Avoids duplication
  4. Has the fewest unnecessary elements

The skill also applies principles such as:

  • YAGNI — Don't build functionality before it is needed
  • KISS — Prefer the simplest design that solves the current problem
  • Small Steps — Refactor incrementally
  • Behavior Preservation — Improve structure without changing behavior
  • Intention-Revealing Names — Make the code explain itself

Code Smells

The skill can identify common categories of code smells, including:

  • Bloaters
  • Object-Orientation Abusers
  • Change Preventers
  • Dispensables
  • Couplers

It then recommends targeted refactorings instead of broad rewrites.


Example Project Structure

A typical Clean Architecture project might look like this:

src/
├── domain/                         # Entities
│   ├── entities/
│   │   ├── User.ts
│   │   └── Order.ts
│   └── value-objects/
│       └── Email.ts
│
├── application/                    # Use Cases
│   ├── use-cases/
│   │   ├── CreateOrderUseCase.ts
│   │   └── GetUserUseCase.ts
│   └── ports/
│       ├── input/
│       │   └── CreateOrderInput.ts
│       └── output/
│           └── UserRepository.ts
│
├── adapters/                       # Interface Adapters
│   ├── controllers/
│   │   └── OrderController.ts
│   ├── presenters/
│   │   └── UserPresenter.ts
│   └── gateways/
│       └── UserRepositoryImpl.ts
│
└── infrastructure/                 # Frameworks & Drivers
    ├── database/
    │   └── PostgresConnection.ts
    ├── web/
    │   └── ExpressServer.ts
    └── external/
        └── PaymentGateway.ts

This is an example, not a required directory structure.

Clean Architecture is primarily about dependency direction and separation of policy from implementation details, not specific folder names.


Repository Structure

clean-architecture-skills/
├── .claude-plugin/
│   └── marketplace.json
│
├── plugins/
│   ├── clean-architecture/
│   │   ├── .claude-plugin/
│   │   │   └── plugin.json
│   │   └── skills/
│   │       └── clean-architecture/
│   │           └── SKILL.md
│   │
│   └── kent-beck-style/
│       ├── .claude-plugin/
│       │   └── plugin.json
│       └── skills/
│           └── kent-beck-style/
│               └── SKILL.md
│
├── README.md
└── LICENSE

Philosophy

These skills are not intended to enforce architecture mechanically.

The goal is to help AI coding agents reason about questions such as:

  • Is business logic coupled to infrastructure?
  • Are dependencies pointing in the right direction?
  • Is an abstraction actually useful?
  • Is this design more complicated than the problem requires?
  • Can this code be improved through a small refactoring instead of a rewrite?
  • Does the code clearly communicate its intent?

Good architecture should make software easier to understand, change, test, and maintain — not merely add more layers.


Contributing

Contributions are welcome.

  1. Fork the repository
  2. Create a feature branch
git checkout -b feature/amazing-feature
  1. Commit your changes
git commit -m "Add amazing feature"
  1. Push the branch
git push origin feature/amazing-feature
  1. Open a Pull Request

References

Clean Architecture

Refactoring & Simple Design

Claude Code


License

MIT License.

Free to use, modify, and distribute.

Facts

Kind
Marketplace
Repo
nathankim0/clean-architecture-skills
Group
Uncategorized
Marketplace name
clean-architecture-skills
Owner
Community
License
MIT
Created
2026-01-22
Forks
8
Topics
claude-code, clean-architecture, code-review, skill, solid-principles
Plugins
2

More on this shelf

  1. 1f/prompts.chatf/prompts.chatf.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.
  2. 2affaan-m/everything-claude-codeaffaan-m/everything-claude-codeThe agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
  3. 3obra/superpowersobra/superpowersAn agentic skills framework & software development methodology that works.
  4. 4anthropics/skillsanthropics/skillsPublic repository for Agent Skills
  5. 5anthropics/claude-codeanthropics/claude-codeClaude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.
  6. 6nextlevelbuilder/ui-ux-pro-max-skillnextlevelbuilder/ui-ux-pro-max-skillAn AI skill that provides design intelligence for building professional UI/UX across multiple platforms.