A collection of reusable Agent Skills and subagents for AI coding assistants (Claude Code, Claude Agent SDK, and other skill-aware tools).
Each skill packages domain expertise — coding principles, design patterns, refactoring techniques, framework setup — into a portable, model-discoverable unit. When a task matches a skill's description, the agent loads it on demand and follows its guidance.
agent-skills/
├── agents/ # Subagent definitions
│ └── refactoring-expert.md
└── skills/ # Agent Skills
├── clean-code/
├── code-smells/
├── create-skills/
├── create-subagent/
├── design-pattern/ # The 22 Gang of Four patterns
├── expo-modules-api/
├── nativewind-expo/
├── pragmatic-programmer/
└── refactoring/
| Skill | What it does |
|---|---|
| clean-code | Apply Robert C. Martin's Clean Code principles — meaningful names, small functions, honest error handling, TDD, SRP, smells & heuristics. |
| code-smells | Detect, name, and remediate code smells using the classic taxonomy (Bloaters, Object-Orientation Abusers, Change Preventers, Dispensables, Couplers). |
| refactoring | Apply named refactoring techniques (Extract Method, Move Method, Replace Conditional with Polymorphism, …) organized by the classic catalog. |
| pragmatic-programmer | Apply The Pragmatic Programmer's foundational principles — DRY and Orthogonality. |
design-pattern covers all 22 Gang of Four patterns, organized by category. Each pattern has its own SKILL.md, REFERENCE.md, and EXAMPLES.md.
- Creational — abstract-factory, builder, factory-method, prototype, singleton
- Structural — adapter, bridge, composite, decorator, facade, flyweight, proxy
- Behavioral — chain-of-responsibility, command, iterator, mediator, memento, observer, state, strategy, template-method, visitor
| Skill | What it does |
|---|---|
| nativewind-expo | Install and configure NativeWind v4 (Tailwind CSS for React Native) in an Expo project. |
| expo-modules-api | Build, extend, and review Expo native modules with the Modules API (Swift/Kotlin DSL, views, events, Records). |
| Skill | What it does |
|---|---|
| create-skills | Create and maintain custom Skills with correct metadata, trigger-aware descriptions, and progressive disclosure. |
| create-subagent | Create and maintain custom subagent definition files for any AI agent platform. |
| Agent | What it does |
|---|---|
| refactoring-expert | Diagnoses code smells and produces prioritized, step-by-step refactoring plans. Always interviews the user first, then plans against named smells and techniques (powered by the code-smells and refactoring skills). |
Each skill lives in its own directory and follows progressive disclosure:
SKILL.md— required. YAML frontmatter (name,description) plus concise instructions. Thedescriptionis what the agent matches against to decide when to load the skill, so it lists concrete triggers.REFERENCE.md— optional. Deeper reference material loaded only when needed.EXAMPLES.md— optional. Worked examples and before/after code.
---
name: clean-code
description: Apply Clean Code principles … Use when the user asks for clean code, refactoring, …
---
# Clean Code
## Purpose
…The fastest way to install is with skills, which works across 17+ agent tools (Claude Code, Cursor, Codex, Gemini CLI, GitHub Copilot, and more):
# Install all skills from this repo
npx skills@latest add mdadul/agent-skillsThe installer detects which agent tools you have and writes the skills to the right place for each — as universal files or symlinks. Run it from inside the project (or directory) where you want the skills available.
# Install a single skill
npx skills@latest add mdadul/agent-skills/clean-codeBy default the installer stops at the top-level skills. To also pull in the 22 nested design-pattern skills, search the full tree:
# Include the nested design-pattern/** skills
npx skills@latest add mdadul/agent-skills --full-depthThe skills CLI installs skills only — the refactoring-expert subagent is a separate artifact you install by hand. For Claude Code, drop it in an agents directory (~/.claude/agents/ for user-wide, or .claude/agents/ in a project):
git clone https://github.com/mdadul/agent-skills.git
# the subagent itself
cp agent-skills/agents/refactoring-expert.md ~/.claude/agents/
# the skills it depends on — it reads code-smells and refactoring at runtime
npx skills@latest add mdadul/agent-skills -s code-smells,refactoringThe
refactoring-expertagent grounds every diagnosis in thecode-smellsandrefactoringskills, so install those alongside it (or run it from inside this repo, where it can read them directly).
Skills are plain Markdown with YAML frontmatter, so you can also install them by hand.
Claude Code — copy (or symlink) a skill directory under your skills path: ~/.claude/skills/ for user-wide, or .claude/skills/ in a project. The agent discovers it automatically. Invoke explicitly with /<skill-name>, or let it trigger when a task matches the description.
git clone https://github.com/mdadul/agent-skills.git
cp -r agent-skills/skills/clean-code ~/.claude/skills/Other tools — point your tool at the skills/ directory or copy individual skill folders; the format is portable across any skill-aware agent platform.
Once installed, invoke a skill explicitly by name (e.g. /clean-code in Claude Code), or simply describe your task — the agent loads the matching skill automatically based on its description.
⚠️ Skills run with full agent permissions. Review a skill before using it.
When adding a skill, use the create-skills skill to keep metadata, descriptions, and structure consistent. For subagents, use create-subagent.