Sandbox
@nathankim0/clean-architecture-skills

Claude Code skills for architecture and refactoring

This repo packages two Claude Code skills: Clean Architecture review and Kent Beck style review. The first checks dependency direction, layer structure, boundary crossings, and SOLID principles; the second looks for code smells, refactoring moves, and simple design issues.

89 stars6 forksUpdated 7mo ago
Who it's for

Builders who want reusable review rules for Claude Code, or who copy skills into Cursor and Gemini CLI.

What it delivers

You can review and shape code with the same architecture and refactoring checks instead of rewriting the guidance each time.

What it does

Clean Architecture review

Checks the dependency rule, layer structure, boundary crossings, and SOLID principles.

Kent Beck style review

Looks for code smells, suggests refactorings, and applies simple design rules like YAGNI and KISS.

Claude Code plugin packaging

Ships as installable Claude plugin metadata and skill files under `plugins/`.

Manual and alternate assistant install paths

Shows how to clone the skills for Claude Code, Cursor, Gemini CLI, and OpenCode-style setups.

How to get it

  1. 1Run
    # 1. Add marketplace
    /plugin marketplace add nathankim0/clean-architecture-skills
    
    # 2. Install skill
    /plugin install clean-architecture@clean-architecture-skills
  2. 2Run
    git clone https://github.com/nathankim0/clean-architecture-skills.git .claude-plugins/clean-architecture-skills
  3. 3Run
    # Review entire project architecture
    Review this project with clean architecture principles
    
    # Review specific module
    Check dependencies in src/domain directory
    
    # Design new feature
    Design user authentication with clean architecture

README

Clean Architecture Skills for Claude Code

A collection of Claude Code skills for code review and design guidance based on Clean Architecture principles and Kent Beck's refactoring philosophy.

Skills

Clean Architecture

Reviews code based on Robert C. Martin's Clean Architecture principles.

  • Dependency Rule Check: Verify source code dependencies point inward (toward higher-level policies)
  • Layer Structure Analysis: Review Entities, Use Cases, Interface Adapters, Infrastructure layers
  • Crossing Boundaries: Guide on how to cross layer boundaries using DIP
  • SOLID Principles Review: Check adherence to object-oriented design principles

Kent Beck Style

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

  • Code Smells Detection: Identify Bloaters, OO Abusers, Change Preventers, Dispensables, Couplers
  • Refactoring Techniques: Extract Method, Move Method, Replace Magic Number, etc.
  • Simple Design Principles: YAGNI, KISS, 4 Rules of Simple Design
  • Intention-Revealing Code: Naming guidelines, self-documenting code, constant extraction

Installation

Claude Code (Recommended)

# 1. Add marketplace
/plugin marketplace add nathankim0/clean-architecture-skills

# 2. Install skill
/plugin install clean-architecture@clean-architecture-skills

Manual Installation

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

Other AI Assistants

AssistantInstallation
CursorClone to .cursor/skills/ directory
Gemini CLIClone to ~/.gemini/skills/ directory
OpenCodeClone to ~/.opencode/skills/ directory

Repository Structure

clean-architecture-skills/
├── .claude-plugin/
│   └── marketplace.json          # Marketplace config
├── plugins/
│   ├── clean-architecture/
│   │   ├── .claude-plugin/
│   │   │   └── plugin.json       # Plugin metadata
│   │   └── skills/
│   │       └── clean-architecture/
│   │           └── SKILL.md      # Skill definition
│   └── kent-beck-style/
│       ├── .claude-plugin/
│       │   └── plugin.json       # Plugin metadata
│       └── skills/
│           └── kent-beck-style/
│               └── SKILL.md      # Skill definition
├── README.md
└── LICENSE

Usage

Clean Architecture

# Review entire project architecture
Review this project with clean architecture principles

# Review specific module
Check dependencies in src/domain directory

# Design new feature
Design user authentication with clean architecture

Kent Beck Style

# Review code for code smells
Review this code for code smells and suggest refactorings

# Refactoring guidance
Help me refactor this long method

# Simple design review
Check if this code follows YAGNI and KISS principles

# Naming and readability
Improve the naming in this module

Clean Architecture Overview

The Dependency Rule

The most important principle of Clean Architecture:

Source code dependencies must only point inward (toward higher-level policies).

┌─────────────────────────────────────────────────────────┐
│                  Frameworks & Drivers                    │
│  ┌─────────────────────────────────────────────────┐    │
│  │              Interface Adapters                  │    │
│  │  ┌─────────────────────────────────────────┐    │    │
│  │  │              Use Cases                   │    │    │
│  │  │  ┌─────────────────────────────────┐    │    │    │
│  │  │  │           Entities              │    │    │    │
│  │  │  │      (Enterprise Business)      │    │    │    │
│  │  │  └─────────────────────────────────┘    │    │    │
│  │  └─────────────────────────────────────────┘    │    │
│  └─────────────────────────────────────────────────┘    │
└─────────────────────────────────────────────────────────┘
                    ← Dependencies flow inward

Layer Responsibilities

LayerResponsibilityExamples
EntitiesCore business rulesUser, Order, Product
Use CasesApplication business rulesCreateOrder, GetUserProfile
Interface AdaptersData transformationController, Presenter, Repository Interface
Frameworks & DriversExternal tools/frameworksExpress, PostgreSQL, React

SOLID Principles

PrincipleDescription
SRP (Single Responsibility)A class should have only one reason to change
OCP (Open/Closed)Open for extension, closed for modification
LSP (Liskov Substitution)Subtypes must be substitutable for base types
ISP (Interface Segregation)Don't depend on interfaces you don't use
DIP (Dependency Inversion)Depend on abstractions, not concretions

Example Project Structure

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

Contributing

Contributions are welcome!

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

MIT License - Free to use, modify, and distribute.

References

Clean Architecture

Kent Beck Style

General

Files in the repo

Repository payload4 top-level entries
  • .claude-plugin
  • plugins
  • LICENSE
  • README.md

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More skills

obra/
superpowers

An agentic skills framework & software development methodology that works.

285k
1 add

Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.

117k
1 add
Vincentwei1021/
anything2explainer

Topic in, narrated explainer video out. A Claude Code / Codex skill that turns any topic into a black-canvas motion-graphics explainer video with TTS voiceover, subtitles and a chapter progress bar. Chinese or English; every frame drawn in code with Remotion.

666

Open-source AI job search: scan job portals, evaluate listings into a structured A-H report with a global 1-5 score, tailor your CV, track applications — runs locally in your AI coding CLI (Claude Code, Codex, OpenCode, Antigravity…)

71k