An AI agent skills collection for selecting, explaining, implementing, comparing, refactoring, and reviewing the 22 classic software design patterns catalogued by Refactoring.Guru.
Every pattern guide is an original, source-linked reference. It focuses on the real engineering pressure behind a pattern: when to use it, when to avoid it, what to verify, and how to keep the design simple.
- Covers all 22 creational, structural, and behavioral patterns in the Refactoring.Guru catalogue.
- Works across languages and programming paradigms; it does not force object-oriented inheritance where it does not fit.
- Includes concrete selection criteria, trade-offs, failure modes, and removal triggers.
- Provides four focused Agent Skills plus 44 evaluation cases to check pattern recommendations.
- Keeps the catalogue and generated references validated with Bun.
The canonical .agents/skills directory follows the open Agent Skills standard. It is discovered directly by Codex CLI, Gemini CLI, GitHub Copilot CLI, and OpenCode. Claude Code uses .claude/skills, linked to the same content without duplication.
AGENTS.md, CLAUDE.md, and GEMINI.md provide host-specific persistent instructions. opencode.json also declares the skill directory explicitly, so discovery works before the folder becomes a Git worktree.
- Codex:
$design-patterns - Claude Code:
/design-patterns - Gemini CLI: natural-language request or
/skills list - OpenCode / Copilot CLI: natural-language request or skill invocation
Examples:
Use $design-patterns to compare State and Strategy for this module.
Use $structural-design-patterns to review whether this wrapper is a Decorator or a Proxy.
Use $behavioral-design-patterns to refactor this event flow without coupling publishers to consumers.
bun run verify
bun run verify:allverify checks the schema, all 22 pattern guides, the 5/7/10 category counts, relations, generated documents, four skills, and 44 evaluation cases (one positive case and one trap per pattern). verify:all also verifies every source URL over HTTP.
The catalogue intentionally contains 22 entries because it follows the requested Refactoring.Guru catalogue. The GoF Interpreter pattern is not listed there and is therefore not presented as an entry.