# clean-code

Скилл для ревью и рефакторинга: 48 правил из книги Роберта Мартина с современными поправками. Пригодится, когда агент пишет или разбирает код.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 842 установки · ★ 218
- Автор: pproenca
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/pproenca/dot-skills/tree/HEAD/skills/.experimental/clean-code/SKILL.md
- Обновлён: 2026-08-15
- HTML: https://affpapa.org/nevibecode/skills/pproenca-clean-code

## Что делает

Скилл разбит на 10 категорий с приоритетами: имена, функции, комментарии, форматирование, обработка ошибок, объекты, границы, классы, тесты и простота дизайна. У каждого правила свой префикс — `name-`, `func-`, `cmt-` и так далее — и отдельный файл с объяснением и примерами. Примеры в основном на Java, но принципы не привязаны к языку.

Внутри лежит таблица приоритетов: имена и функции помечены как CRITICAL, комментарии, форматирование и ошибки — HIGH, остальное ниже. Агент подтягивает нужное правило, когда вы просите назвать переменную, разбить функцию или написать тест. Есть шаблон для добавления своих правил.

Скилл опирается на издание 2008 года, поэтому часть советов переписана под современную практику. Если в проекте свой гайдлайн по стилю, правила форматирования из скилла могут с ним разойтись — это повод проверить, что победит в вашем ревью.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add pproenca/dot-skills --skill clean-code -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/clean-code/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/clean-code/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add pproenca/dot-skills --skill clean-code -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/clean-code/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add pproenca/dot-skills --skill clean-code -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/clean-code/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install pproenca/dot-skills clean-code
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/clean-code/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add pproenca/dot-skills --skill clean-code -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/pproenca/dot-skills --path skills/.experimental/clean-code
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/clean-code/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add pproenca/dot-skills --skill clean-code -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/pproenca/dot-skills/tree/HEAD/skills/.experimental/clean-code/SKILL.md

## Когда брать
- переименовать переменные так, чтобы имя объясняло смысл
- разбить длинную функцию на части с одним уровнем абстракции
- убрать закомментированный код и лишние комментарии
- обернуть стороннюю библиотеку и написать к ней learning tests
- переписать тест, который проверяет сразу несколько вещей

## Примеры запросов агенту
- проверь этот модуль по правилам clean-code и покажи, что нарушено
- предложи имена для этих переменных по name-intention-revealing
- разбей функцию `processOrder` по func-one-thing и func-small

## Похожие
- [clean-code-guard](https://affpapa.org/nevibecode/skills/clean-code-guard.md) — скилл · 4700 установок
- [typescript-clean-code](https://affpapa.org/nevibecode/skills/typescript-clean-code.md) — скилл · 628 установок
- [clean-code-principles](https://affpapa.org/nevibecode/skills/clean-code-principles.md) — скилл · 1800 установок
- [code-refactoring-refactor-clean](https://affpapa.org/nevibecode/skills/code-refactoring-refactor-clean.md) — скилл · 1200 установок
- [indexion-identity](https://affpapa.org/nevibecode/skills/indexion-identity.md) — скилл · 4900 установок
- [code-simplification](https://affpapa.org/nevibecode/skills/code-simplification.md) — скилл · 62800 установок

## Другие версии с тем же именем
- [clean-code · sickn33](https://affpapa.org/nevibecode/skills/sickn33-clean-code.md) — 12400 установок
- [clean-code · wondelai](https://affpapa.org/nevibecode/skills/wondelai-clean-code.md) — 6600 установок
- [clean-code · decebals](https://affpapa.org/nevibecode/skills/decebals-clean-code.md) — 379 установок
- [clean-code · davila7](https://affpapa.org/nevibecode/skills/clean-code.md) — 7176 установок

Из того же набора: [pproenca/dot-skills](https://affpapa.org/nevibecode/by/pproenca/dot-skills.md) — 46 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
