solid-principles SKILL.md skillA

solid-principles from decebals/claude-code-java is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add decebals/claude-code-java/solid-principles@git:20260828.d70ab4f

Pins git:20260828.d70ab4f in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
decebals/claude-code-java
Path
skills/solid-principles/SKILL.md
Versions recorded
2
Latest version
git:20260828.d70ab4f, committed Aug 28, 2026
First version recorded
Aug 28, 2026
Size
16,972 bytes
Repository stars
759
License
MIT

SOLID principles checklist with Java examples. Use when a class has too many responsibilities, an abstraction leaks, or a dependency points the wrong way, and when the user asks about Single Responsibility, Open/Closed, Liskov, Interface Segregation or Dependency Inversion. For naming, duplication and method length, use clean-code instead.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# SOLID Principles Skill

Review and apply SOLID principles in Java code.

## When to Use
- User says "check SOLID" / "SOLID review" / "is this class doing too much?"
- Reviewing class design
- Refactoring large classes
- Code review focusing on design

---

## Quick Reference

| Letter | Principle | One-liner |
|--------|-----------|-----------|
| **S** | Single Responsibility | One class = one reason to change |
| **O** | Open/Closed | Open for extension, closed for modification |
| **L** | Liskov Substitution | Subtypes must be substitutable for base types |
| **I** | Interface Segregation | Many specific interfaces > one general interface |
| **D** | Dependency Inversion | Depend on abstractions, not concretions |

---

## S - Single Responsibility Principle (SRP)

> "A class should have only one reason to change."

### Violation

```java
// ❌ BAD: UserService does too much
public class UserService {

    public User createUser(String name, String email) {
        // validation logic
        if (email == null || !email.contains("@")) {
            throw new IllegalArgumentException("Invalid email");
        }

        // persistence logic
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add decebals/claude-code-java/solid-principles@sha256:078fe811802f8cd3

The line at the top of this page pins the label git:20260828.d70ab4f, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_7cl3sjxgygtuk6se.svg)](https://markdownregistry.com/a/art_7cl3sjxgygtuk6se)

5 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 2 versions of this file, all committed on Aug 28, 2026.

versioncommittedcommitsizeaudit
git:20260828.d70ab4f latest2026-08-28 d70ab4f 16,972 BA view · diff
git:20260828.702770a2026-08-28 702770a 16,839 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (16972 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

decebals/claude-code-java · 759 stars · license MIT · pushed 2026-09-06 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_7cl3sjxgygtuk6se
GET https://markdownregistry.com/api/v1/resolve?ref=decebals/claude-code-java/solid-principles
GET https://markdownregistry.com/api/v1/blob/078fe811802f8cd3dcc91eed18c17f901087c07c5778a15e033d1b421ebdc8a4

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from decebals/claude-code-java

api-contract-review SKILL.md skill
decebals/claude-code-java · skills/api-contract-review/SKILL.md · Review REST API contracts for HTTP semantics, versioning, backward compatibility, and response consistency. Use when…
git:20260828.702770a · audit A · 759 stars
architecture-review SKILL.md skill
decebals/claude-code-java · skills/architecture-review/SKILL.md · Analyze Java project architecture at macro level - package structure, module boundaries, dependency direction, and…
git:20260828.702770a · audit A · 759 stars
changelog-generator SKILL.md skill
decebals/claude-code-java · skills/changelog-generator/SKILL.md · Generate changelogs from git commits. Use when user says "generate changelog", "update changelog", "what changed since…
git:20260828.702770a · audit A · 759 stars
clean-code SKILL.md skill
decebals/claude-code-java · skills/clean-code/SKILL.md · Clean Code principles (DRY, KISS, YAGNI), naming, function design and readability. Use when code is hard to read, with…
git:20260828.d70ab4f · audit A · 759 stars
concurrency-review SKILL.md skill
decebals/claude-code-java · skills/concurrency-review/SKILL.md · Review Java concurrency code for thread safety, race conditions, deadlocks, and modern patterns (Virtual Threads…
git:20260828.702770a · audit A · 759 stars
design-patterns SKILL.md skill
decebals/claude-code-java · skills/design-patterns/SKILL.md · Common design patterns with Java examples (Factory, Builder, Strategy, Observer, Decorator, etc.). Use when user asks…
git:20260828.702770a · audit A · 759 stars
git-commit SKILL.md skill
decebals/claude-code-java · skills/git-commit/SKILL.md · Generate conventional commit messages for Java projects. Use when user says "commit", "create commit", "commit…
git:20260828.702770a · audit A · 759 stars
issue-triage SKILL.md skill
decebals/claude-code-java · skills/issue-triage/SKILL.md · Triage and categorize GitHub issues with priority labels. Use when user says "triage issues", "check issues", "review…
git:20260828.702770a · audit A · 759 stars
java-code-review SKILL.md skill
decebals/claude-code-java · skills/java-code-review/SKILL.md · Systematic code review for Java with null safety, exception handling, concurrency, and performance checks. Use when…
git:20260828.702770a · audit A · 759 stars
java-migration SKILL.md skill
decebals/claude-code-java · skills/java-migration/SKILL.md · Guide for upgrading Java projects between major versions (8→11→17→21→25). Use when user says "upgrade Java", "migrate…
git:20260828.702770a · audit A · 759 stars
jpa-patterns SKILL.md skill
decebals/claude-code-java · skills/jpa-patterns/SKILL.md · JPA/Hibernate patterns and common pitfalls (N+1, lazy loading, transactions, queries). Use when user has JPA…
git:20260828.702770a · audit A · 759 stars
logging-patterns SKILL.md skill
decebals/claude-code-java · skills/logging-patterns/SKILL.md · Java logging best practices with SLF4J, structured logging (JSON), and MDC for request tracing. Includes AI-friendly…
git:20260828.702770a · audit A · 759 stars

Every file in decebals/claude-code-java

Other files named solid-principles

solid-principles SKILL.md skill
pantheon-org/tekhne · skills/software-engineering/design-principles/solid-principles/SKILL.md · Apply SOLID principles (SRP, OCP, LSP, ISP, DIP) for tactical class design, method extraction, and interface…
git:20261002.e6369ee · audit A · 10 stars
solid-principles SKILL.md skill
khaledsaeed18/dotclaude · skills/engineering/solid-principles/SKILL.md · Apply the SOLID principles as design diagnostics, detecting god classes, fragile hierarchies, fat interfaces, and…
git:20260921.4ccfb75 · audit A · 5 stars
solid-principles SKILL.md skill
khaledsaeed18/dotclaude · .claude-plugin/plugins/engineering/skills/solid-principles/SKILL.md · Apply the SOLID principles as design diagnostics, detecting god classes, fragile hierarchies, fat interfaces, and…
git:20260921.4ccfb75 · audit A · 5 stars

Browse by kind, by grade A, or by owner.