# docvet

Ловит пропущенные разделы в докстрингах Python прямо во время набора: Raises, Yields, Attributes, Examples, перекрёстные ссылки.

- плагин · `type=plugin` · Claude Code · ★ 10
- Автор: Alberto-Codes
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/Alberto-Codes/docvet
- Обновлён: 2026-10-22
- HTML: https://affpapa.org/nevibecode/plugins/docvet

## Что делает

docvet — это CLI-инструмент для проверки качества докстрингов в стиле Google, который подключается к Claude как плагин. Он смотрит на структуру кода через AST и сравнивает её с тем, что написано в докстринге: если функция бросает `ValueError`, а раздела Raises нет, вы увидите предупреждение. Всего в каталоге 32 правила по пяти направлениям: наличие докстрингов, полнота разделов, свежесть по истории git, предупреждения рендеринга griffe и проверка `__init__.py` для видимости в mkdocs.

Находки показываются инлайн: обязательные правила идут как warnings, рекомендованные — как hints. Настройка живёт в `[tool.docvet]` внутри `pyproject.toml`, там же задаются `fail-on` и пороги свежести. Есть готовые хуки для pre-commit и GitHub Action, так что проверку можно встроить в CI без ручной обвязки.

Для проверок рендеринга нужен дополнительный пакет: `pip install docvet[griffe]`. Без него правила группы griffe не запустятся, и если `griffe` указан в `fail-on`, docvet сообщит об этом в stderr и завершится с кодом 1 — это не то же самое, что найденные проблемы. Отключается такое поведение флагом `--no-fail-on-unavailable`.

## Установка

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

**Через маркетплейс плагинов**
В чате агента (не в терминале):
```text
/plugin marketplace add anthropics/claude-plugins-community
```
В чате агента (не в терминале):
```text
/plugin install docvet@claude-community
```

## Когда брать
- найти функцию, которая бросает исключение, но не описывает его в докстринге
- проверить, что все параметры из сигнатуры попали в раздел Args
- поймать устаревший докстринг после изменения сигнатуры или тела функции
- убедиться, что пакет виден mkdocs — есть ли `__init__.py`
- отловить предупреждения griffe до сборки документации

## Примеры запросов агенту
- Проверь докстринги в `src/mypackage/` и покажи, где не хватает раздела Raises
- Запусти docvet check --all и объясни, какие находки обязательные, а какие рекомендованные
- Почему docvet ругается на `parse_config` в `utils.py`?

## Похожие
- [claude-api](https://affpapa.org/nevibecode/plugins/claude-api.md) — плагин · ★ 184013
- [document-skills](https://affpapa.org/nevibecode/plugins/document-skills.md) — плагин · ★ 184013
- [project-artifact](https://affpapa.org/nevibecode/plugins/project-artifact.md) — плагин · ★ 44770
- [context7](https://affpapa.org/nevibecode/plugins/context7.md) — плагин · ★ 44770
- [claude-md-management](https://affpapa.org/nevibecode/plugins/claude-md-management.md) — плагин · ★ 44770
- [visual-explainer](https://affpapa.org/nevibecode/plugins/visual-explainer.md) — плагин · ★ 10644

Из того же набора: [alberto-codes/docvet](https://affpapa.org/nevibecode/by/alberto-codes/docvet.md) — 2 карточки

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

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